在iOS 9之前,我们能够使用canOpenURL
方法检查是否有可以处理特定网址方案的应用,因此广泛用于检查用户是否安装了特定应用。
现在,从iOS 9开始,我们必须预先声明应用程序可以检查的URL Schemes。这通常很酷,但这意味着对于新应用的每个版本,我们都必须更新以前的应用,以便能够检查是否安装了新应用。
现在有没有理智的方法呢? 我猜大多数广告和交叉推广服务都依赖于此,不得不以某种方式进行调整,谁知道怎么做?
由于 克里斯蒂安
答案 0 :(得分:2)
好的,回顾一下。
目前,处理我的方案的唯一方法是以有序的方式为每个应用分配一个特定的方案,例如:
my.domain.app01
my.domain.app02
...
如果您已经发布了应用,只需更新它们即可添加新的附加方案。
现在,在Info.plist文件中,您必须将所有现有和未来的方案添加到Info.plist中的LSApplicationQueriesSchemes
列表中。
这个想法是:即使你发布了10个应用程序,你也可以添加40个条目。这样,你就不必更新你的应用程序来为将来的应用程序添加方案,它们已经存在并且你将能够检测到它们。
这当然涵盖了我的场景,我希望能够检测到自己的应用并使用它们。
请记住,您的应用可以处理多个方案,因此您可以分配内部方案+使用更好的名称来允许外部访问您的应用。