概述
有时候由于应用的限制,我们需要在应用内调用外部浏览器去打开一个网页链接。比如调用QQ浏览器。
此时可以在iTunes Stroe中下载QQ浏览器的ipa安装包,然后在我的应用程序中右击选择”在Finder中显示”。之后解压缩安装包。在打开的文件夹中选择Payload。选择mttlite右击”显示包内容”。
找到Info.plist文件并打开,找到URL TYPE并展开
可以看到URL Schemes为mttbrowser
同样的可以知道UC浏览的URL Schemes为ucbrowser
所以在代码中我们可以这样写。有时可能因为浏览器的差异会有不同
//QQ浏览器
NSString *toQQStr = [NSString stringWithFormat:@"mttbrowser://url=%@",url];
NSURL *toQQURL = [NSURL URLWithString:toQQStr];
[[UIApplication sharedApplication] openURL:toQQURL];
//UC浏览器
NSString *toUCStr = [NSString stringWithFormat:@"ucbrowser://%@",url];
NSURL *toUCURL = [NSURL URLWithString:toUCStr];
[[UIApplication sharedApplication] openURL:toUCURL];
但有时因为我们的手机中并未安装相关的应用,即调用
UIApplication中openURL方法返回false
则需要提示用户下载并自动进入到App Store 中的应用下载页。
那么问题来了,如何从应用内进入到App Store指定应用的下载页呢
我们可以在App Store中搜索应用点击分享按钮 选择短信分享。即可获取到该应用下载页的地址。如QQ浏览器在App Sore中的下载地址就是https://appsto.re/cn/Mc-dw.i
之后可以通过代码
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://appsto.re/cn/Mc-dw.i"]];
去打开应用在App Store中的下载页。
最后
以上就是哭泣铃铛为你收集整理的iOS 应用内调用外部浏览器的全部内容,希望文章能够帮你解决iOS 应用内调用外部浏览器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复