如何检测用户是否在Cocoa中有应用程序

时间:2011-10-23 13:00:13

标签: objective-c macos cocoa

我如何检测用户是否有应用程序,例如echofon或twitter for mac,或者用户是否有网页,还是textmate?有什么建议吗?

2 个答案:

答案 0 :(得分:9)

使用NSWorkspace的fullPathForApplication:获取应用程序的包路径。如果该方法返回nil,则不会安装该应用程序。例如:

NSString *path = [[NSWorkspace sharedWorkspace] fullPathForApplication:@"Twitter"];

BOOL isTwitterInstalled = (nil != path);

URLForApplicationWithBundleIdentifier是您可以使用的另一种方法。

答案 1 :(得分:-1)

我从未尝试过上述答案中的代码,但以下内容适用于我:

    if ( [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"app-scheme://"]] ) {
        NSLog(@"This app is installed.");
    } else {
        NSLog(@"This app is not installed.");
    }

此方法要求应用程序具有方案。我不知道上面那个。