美文网首页
Universal Links

Universal Links

作者: 飞天蛤蟆 | 来源:发表于2021-03-27 16:00 被阅读0次

    一、准备工作

    • 有一个注册的域名
    • 域名可通过 SSL 访问(需要有效的证书)
    • 支持上传一个 JSON 文件到域名
    • 我使用的是阿里云服务器,宝塔面板搭建,ssl证书使用的是Let's Encrypt的测试证书。
      这里注意: 我用宝塔ssl一直是不成功的,换成Let's Encrypt后是可以了。

    二、Xcode工程配置

    1. 首先就是打开工程配置中的Associated Domains打开


      image.png

    在其中的Domains中填入你想支持的域名
    (PS:这里不是随便填的,是可以支持你需要的Universal Links的域名),
    必须以 applinks: 为前缀

    三、服务端配置
    1.创建apple-app-site-association为名字的json文件,注意这个文件必须没有后缀名。
    文件名必须为apple-app-site-association

    {
        "applinks":{
            "apps":[ 
           ],
            "details":[
                {
                    "appID":"9JA89QQLNQ.com.apple.test01",
                    "paths":[
                        "/*"
                    ]
                }
            ]
        }
    }
    

    说明:
    appID: teamId + bundleId
    paths: 设定一个你的app支持的路径列表,只有这些指定的路径的链接,才能被app所处理,
    举个例子:如果你的网站是www.testdemo.com,你的path写的是"/support/*",那么当用户点击www.testdemo.com/support/myDoucument,就可以进入你的app了,相反www.yohunl.com/other就不会.

    1. 上传apple-app-site-association文件
      • 上传该文件apple-app-site-association到你的域名所对应的网站的根目录下
        这一步是为了苹果能从https://你的域名/apple-app-site-associationxh获取到你上传的apple-app-site-association文件.

      • 如果根目录下有.well-know文件夹,也需要上传apple-app-site-association文件,如果没有.well-know文件夹,需要创建文件夹,注意前面的点

      • 上传完后,自己先访问一下,看看是否能够获取到
        https://更换你的域名/apple-app-site-association
        https://更换你的域名/.well-know/apple-app-site-association

      • 苹果为了方便开发者,提供了一个网页来验证我们编写的这个apple-app-site-association是否合法有效,验证网址,进入网站进行验证

    image.png

    3.经测试发现,在相同的域名内Universal Links是不work的,必须要跨域才生效,
    我们实测值需要跨子域名即可,比如 app.domain.com 跳转 rss.domain.com 是可以触发跳转App。

    • rss.domain.com域名中配置apple-app-site-association文件
    • app.domain.com域名中写跳转页面

    4.在app.domain.com中添加index.html 文件

    image.png
    • 内容为:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>open_app</title>
        <meta charset=UTF-8>
      </head>
      
      <body>
            <p style="text-align: center">
                <a style=" color:#00008b; font-size:80px;" href='https://rss.qssen.com/appLink.html'>拉起app</a>
            </p>
      </body>
    </html>
    

    index.html文件内容就一个跳转连接,https://rss.qssen.com/appLink.html

    • 贴一下appLink.html的内容
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>open_app</title>
        <meta charset=UTF-8>
      </head>
      
      <body>
            hello
      </body>
    </html>
    

    这里只是随便写的,保证能打开页面。

    5.到这里应该差不多了,

    • 开始同样放在rss.qssen.com域名下,怎么也启动不了,后来换了下域名,问题解决。
    • apple-app-site-association文件不能带后缀,务必把”.json”的后缀去掉!有些人的电脑是隐藏文件后缀的,这要格外注意;
    • apple-app-site-association要传到域名根目录或者/apple-app-site-association目录下;
    • 抓包的结果显示,网络顺畅的情况下,应用会在在刚安装(不是打开)的时候会去applink中的地址下载apple-app-site-association文件,所以如果需要测试,请保证网络通畅;

    四、测试

    1.要跳转的app运行到手机上
    2.在Safari输入跳转地址https://app.qssen.com/index.html,点击页面的跳转app,则会打开app,
    3,在Safari输入https://rss.qssen.com/appLink.html,下滑,你会发现顶部出现打开app的横栏,点击打开app

    跳转app


    image.png

    横幅


    image.png

    相关文章

      网友评论

          本文标题:Universal Links

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