在我的代码中,我需要确定是否已在iphone设备上安装了应用程序(我需要检查的应用程序是Square)。如果没有安装该应用程序,我会直接打开应用程序到Square,如果安装了,我想打开Square。有没有办法做到这一点?我查看了这个讨论:iphone - Check if an app is installed,但无法解决。由于我不是Square的开发人员,我在哪里可以获得有关URL方案的信息?
感谢。
答案 0 :(得分:4)
它不一定有一个方案。开发人员必须这样做,并有理由支持传入的URL。我不知道他们是否已经这样做了,或者他们是否记录了它,或者其他什么。
假设没有文档,那么你可以刺它,看看你得到了什么。如果您对该方案有所猜测(“方块:”,或许?),您可以使用UIApplication的canOpenUrl方法对其进行测试:
UIApplication *app = [UIApplication sharedApplication];
if ([app canOpenURL:[NSURL URLWithString:@"square:"]]) {
NSLog(@"found it!");
}
如果“square:”是设备上任何应用已声明的URL方案,则此代码将在控制台中告知您。