平常我们做iOS开发会经常遇到打開其他的APP的功能。本篇文章讲的就是打开别人的APP的一些知识我们的目标是:
- 让别人打开我们的APP
然后两句代码直接搞定:
有个需求是点击短信中的(或鍺是其他地方的)URL,能够唤起APP
思路,首先找个实现了的APP做测试
在淘宝中把宝贝链接分享到微信,结果如下:
直接点开跳转到微信的內建浏览器,指示用户通过浏览器打开:
点击在浏览器中打开效果为弹窗显示所有的浏览器APP,提示选择一个浏览器此时使用淘宝打开即跳转到APP
把链接内容作为短信发送给自己,点击短信中的链接效果:
其中,第三种方法是可行的:把HTML文件拷贝到外部存储并使用外部存储文件的URL传递给浏览器。
第二种使用asset查找资料得知:要调起的APP是系统浏览器,而加载的文件却在我们自己的内部存储中系统浏览器昰无法读取文件的,囧
第四种直接加URL显然可以,然并卵
最后一行代码有可能无效,如果无效报manifest中未定义BrowserActivity的话则替换为下面代码:
使用系统浏览器打开外部存储的HTML文件后效果与自定义WebView的显示效果相同,并且点击链接后能够跳转到我们想要的Activity。
当然如果我们的H5界面上線了,就不用加载我们自己的HTML文件了
点击外部URL跳转到自己的APP界面是可行的。
web端要做的:与APP定跳转Activity的私有协议在页面中直接触发此条私囿协议,来达到淘宝的效果
APP端需要做的工作还有:接收web端传来的参数进行处理。
系统默认浏览器无法加载APP内部HTML文件
自定义WebView和系统浏览器还是有区别的,系统浏览器会根据scheme触发可以响应的安卓组件
平常我们做iOS开发会经常遇到打開其他的APP的功能。本篇文章讲的就是打开别人的APP的一些知识我们的目标是:
然后两句代码直接搞定:
版权声明:本文为robert原创文章未經博主允许不得转载。博客地址/robertcpp, 欢迎访问新博客地址
上面代码可以达到这样一个目的先请求 launchapp:// ,如果系统能处理,或者说已經安装了myapp表示的应用那么就可以打开,另外如果不能打开,直接刷新一下当前页面等于是重置location。
欢迎关注公众号互相学习
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。