gpt4 book ai didi

objective-c - NSRunningApplication 没有特定的应用程序窗口

转载 作者:行者123 更新时间:2023-12-03 16:45:37 31 4
gpt4 key购买 nike

我希望我的应用程序知道哪些应用程序当前正在运行并显示在表格中。在表格中,它将显示所有正在运行的应用程序名称,每个应用程序旁边都有一个按钮。单击按钮时,我们必须打开特定应用程序的窗口,即使它已最小化或关闭。我通过以下代码获得了正在运行的应用程序列表,但没有获取应用程序的窗口,因为 NsRunningApplication 对象没有任何窗口或 View 。有人可以帮我吗?

NSMutableArray* mOpendAppsArray = [[NSMutableArray alloc] init];
NSMutableArray* mOpenedAppsNamesArray = [[NSMutableArray alloc] init];
NSUInteger count = [[[NSWorkspace sharedWorkspace] runningApplications] count];
for (NSUInteger i = 0; i < count; i++) {
NSRunningApplication *app = [[[NSWorkspace sharedWorkspace] runningApplications] objectAtIndex: i];

if(app.activationPolicy == NSApplicationActivationPolicyRegular) {
[mOpenedAppsNamesArray addObject:app.localizedName];
[mOpendAppsArray addObject:app];
}
}

最佳答案

如果您除了本地化名称(我假设是您在表格中显示的名称)之外还获得了应用程序的bundleID,则可以使用以下命令激活应用程序:

NSArray* apps = [NSRunningApplication runningApplicationsWithBundleIdentifier:@"com.bla.blah"];
[(NSRunningApplication*)[apps objectAtIndex:0] activateWithOptions: NSApplicationActivateAllWindows];

关于objective-c - NSRunningApplication 没有特定的应用程序窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33912109/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com