您的位置:首页 > 移动开发 > 微信开发

qq 微信 launcher,如何跳转到上千款应用

2016-01-11 17:56 549 查看
launcher曾经风靡一时,它有数千款应用的跳转方式。qq 微信开放登陆、支付等方式后,几千款应用接入。他们都需要openurl进行跳转。

ios9以前,想要跳转一个应用,只需要知道对应的url-scheme,直接调用openURL即可,例如微信

[[UIApplication sharedApplication] openURL:@"weixin://"];


如果想知道是否安装了微信,可以调用canOpenURL:

[[UIApplication sharedApplication] canOpenURL:@"weixin://"];


到了ios9,事情发生了一点变化,首先info.plist出现了一个LSApplicationQueriesSchemes的配置,叫做白名单,苹果想要限制应用可跳转的应用必须先配置声明。也就是说,写在LSApplicationQueriesSchemes的url-scheme才可以调用,而这个名单的限制是50个。

这下qq 微信有困难了,那么多注册应用,而且是动态增加的,如果无法正常回调,众多平台型应用岂不是废掉了。

后来苹果果然修改了策略,LSApplicationQueriesSchemes只限制canOpenURL:,如果不需要检查是否安装应用,依然可以直接调用openURL:,成功返回YES,失败返回NO。

这样的策略,使得应用谨慎的添加LSApplicationQueriesSchemes,对那些需要准确知道是否安装的应用才添加到列表,以便进行
安装/打开
的对应引导。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: