2

我正在尝试在我的设备上检测安装的 Instagram,以前我使用此代码来检测应用程序,但它似乎不适用于 iOS 6 或非 JB 设备:

NSString *filePath = @"/Applications/Instagram.app";
if ([[NSFileManager defaultManager] fileExistsAtPath:filePath])
{

    [self checkingInstalledApp];
}

else

{

NSLog(@"no instagram installed");

}

我检查了这个问题,但他的回答给了我很多错误!任何解决方案?

4

2 回答 2

5

这是无效代码有两个原因。

1) 它尝试与其沙盒之外的区域进行交互。

2)它依赖于未记录的实现细节(可能安装位置已移动或应用程序名称已更改?)

您需要做的是使用canOpenURL:方法UIApplication来确定系统是否可以通过其自定义方案启动应用程序(注意:如果应用程序没有自定义方案,那么您就不走运了)

于 2013-05-23T07:14:51.287 回答
5

自定义 URL 方案打开 instagram://,后跟以下参数之一,将打开我们的应用程序并执行自定义操作。例如,对于相机,您可以将 iPhone 上的用户定向到自定义 URL instagram://camera。

NSURL *instagramURL = [NSURL URLWithString:@"instagram://location?id=1"];
    if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
        [[UIApplication sharedApplication] openURL:instagramURL];
    }

来自Instagram iPhone Hooks

于 2013-05-23T07:40:15.573 回答