美文网首页程序员
h5分享页在微信中拉起app(用ios9的UniversalLi

h5分享页在微信中拉起app(用ios9的UniversalLi

作者: 年轻人_9515 | 来源:发表于2017-11-17 16:44 被阅读0次

    在项目中碰到了需要在微信中分享的H5页拉起app,没法申请到微信的白名单,所以找到了别的办法,Apple在WWDC2015上为iOS9引入的一个新功能,是通过传统HTTP链接来启动App的技术。可以使用相同的网址打开网站和App。

    使用UniversalLink有一些条件

            至少Xcode7

            至少iOS9beta2(之前的测试版本要做额外的工作)

            有一个注册通过SSL访问的域名

    1. ios部分的操作(本人是前端,ios操作不太详细,可以去网上查找)

        a.注册App并打开Associated Domains服务

        b.在Xcode中开启Associated Domains服务

               添加域名,点击Associated Domains的“+”添加前缀为applinks:的域名

        c.确认在entitlements文件包含在工程中

    2.配置apple-app-site-association文件

        a.创建apple-app-site-association的json文件

        文件格式如下图所示:

        其中apps项必须对应一个空的数组。details项对应一个字典的数组,网站所能支持的每个app一个字典。

        appID对应项由前缀和ID两部分组成,可以在developer.apple.com中的Identifiers→AppIDs中点击对应的App ID查看。

        paths对应域名中的path,用于过滤可以跳转到App的链接,支持通配符‘*’,‘?’以及‘NOT’进行匹配,匹配的优先级是从左至右依次降低。

    b.服务器配置要求:

        域名需要SSL证书,如果不支持HTTPS,则需要对apple-app-site-association进行SSL认证。认证命令如下:

        cat apple-app-site-association-unsigned | openssl smime -sign -inkey yourdomain.com.key -signer yourdomain.com.cert -certfile digicertintermediate.cert -noattr -nodetach -outform DER > apple-app-site-association

        服务器配置要求站点必须是youdomain.com/apple-app-site-association,请求头是‘application/pkcs7-mime’,返回HTTP码是200

    3.前端处理(前端处理相对简单些,但可能会因为苹果手机系统版本不一样而出现拉不起app的情况)

        

    相关文章

      网友评论

        本文标题:h5分享页在微信中拉起app(用ios9的UniversalLi

        本文链接:https://www.haomeiwen.com/subject/zmruuxtx.html