iOS微信打开App

传统的方式是经过URL Scheme的方式,可是iOS9之后又出了新的更完美的方式Universal Links。html

传统的URL Scheme方式微信内置的浏览器都是封锁了全部它投资的公司以外的,只有白名单的才能够(好比京东,B站,等)。Universal Links也不能算是完美的实现,可是已是目前为止最好的了。ios

就说一下这个东西的介绍,就像在windows里面为某一类型的文件添加了默认的打开方式。只不过这个文件类型变成了某一个“域名”(并不是彻底是某个域名,或者能够称之为某段有特殊意义的URL)的URL。这个东西只能在iOS9之后才有。web

具体的表如今在iOS系统中,当你邮件或者短信或者其余方式收到含有某段“特定标示”的URL的时候若是安装有你的app,就能够直接默认调用app去打开,不然只能调用你的Safari去打开。具体到微信里面就是打开了分享的H5,右上角更多-在Safari中打开,能够直接调用你的app去打开这个URL。具体在app的中怎么展现相关的逻辑就看你的了。json

具体介绍的相关文章:windows

苹果文档:https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalLinks.htmlapi

苹果检测连接有效性:https://search.developer.apple.com/appsearch-validation-tool/浏览器

很棒的一个英文的步骤文章:https://blog.branch.io/how-to-setup-universal-links-to-deep-link-on-apple-ios-9服务器

相关的文章:http://www.jackivers.me/blog/2015/9/17/list-of-universal-link-ios-9-apps微信

      http://tech.glowing.com/cn/deferred-deep-linking-and-branch-sdk-in-ios/(URL Scheme和Universal Links优缺点介绍的很棒,这个团队的技术博客也很不错哦)app

      http://www.cocoachina.com/ios/20150911/13321.html(里面的那个运行流程的总结图很不错)

 

具体的步骤就再也不赘述了,由于不管是官方文档,仍是其余人写的文章都很棒了,我就说一下实际开发中可能遇到的的坑。

1.注意拼写那个json文件的时候,应该是你的开发者中心,Identifiers---App IDs--- 应用的证书名字(bundle id全部对应的那个)---Prefix
.英文的点号,再跟上你的bundle id。而且文件的名字必须为“apple-app-site-association”,不能本身私自定义。用浏览器打开https://<domain>/apple-app-site-association文件,看一下成功否就能够了。

2.生成后的json文件必定是要放到你的那些网页所在的站点的目录下面的HTTPS web server根目录下面。好比你的网站是https://www.google.com(全部的网页都是以这个开头的),而后你应用的地址baseurl是https://api.google.com,其实你应该放在www的那个HTTPS web server根目录下面。而后过两三分钟吧,就用苹果有效性检测工具的那个去试一下,找一个你要分享出去的h5连接试一下,只要不出错,出来不少的相关信息就能够了(就跟用这个URL测试出来的结果同样就能够了https://www.yelp.com/biz/michael-winnetka)。

3.在工程的设置Associated Domains的时候,必定先要去苹果的开发者中心打开你的应用证书Associated Domains Enabled。而后记得更新你的证书关联的东西,而后更新本地的证书。才能够打开工程的Associated Domains。记住填写连接的时候是applinks:<domain>。这个<domain>就是第1点中调试通的那个(若是你的应用的api的和页面的不区分服务器就同样了)。

4.而后编译你的应用。若是你在短信中含有相似的https://<domain>?a=1&b=2 已经经过了后,直接长按会出来“在“XXX”中打开”就说明成功了。能够去微信微博等其余的地方去看看了。

 

转自:https://www.cnblogs.com/ysk-china/p/5777299.html

相关文章
相关标签/搜索