以编程方式关闭Mac应用程序

时间:2015-11-05 14:51:06

标签: objective-c macos

我想创建一个可以关闭你告诉它的任何应用程序的应用程序。

我试过NSApp终止:nil 但它关闭了我的应用程序而不是我希望它关闭的应用程序

如何使用目标c关闭我的mac上的任何应用程序。

3 个答案:

答案 0 :(得分:3)

使用NSWorkspace上的NSArray<NSRunningApplication *> *runningApplications = [NSWorkspace sharedWorkspace].runningApplications; NSRunningApplication * app = runningApplications[n]; // find the app you want to kill [app terminate]; // or: [app forceTerminate]; 媒体资源:

ColumnText

文档:NSWorkspaceNSRunningApplication

答案 1 :(得分:0)

您可以使用NSRunningApplication和应用程序的包标识符

来实现
NSArray *applications = [NSRunningApplication runningApplicationsWithBundleIdentifier:@"com.apple.mail"];
if (applications.count) {
  [(NSRunningApplication *)applications[0] terminate];
}

答案 2 :(得分:0)

我用于杀死我的(守护程序)应用程序的代码。

- (BOOL) terminateService:(NSString *) bundleId{
    BOOL res =NO;
    for ( NSRunningApplication *app in [[NSWorkspace sharedWorkspace] runningApplications] ){
        if ( [bundleId isEqualToString:[app bundleIdentifier]] ){
            res = [app forceTerminate];
        }
    }
    return res;
}