美文网首页iOS充电知识点
iOS微信授权登录中Universal Link(通用链接)的配

iOS微信授权登录中Universal Link(通用链接)的配

作者: iOS攻城狮_Runloop | 来源:发表于2023-04-10 14:41 被阅读0次

    Unuversal Links介绍

    Seamlessly link to content inside your app, or on your website in iOS 9 or later. With universal links, you can always give users the most integrated mobile experience, even when your app isn’t installed on their device.
    Universal Link(通用链接)是苹果在iOS9推出的,一种能够方便的通过传统HTTPS链接来启动APP的功能,可以使用相同的网址打开网址和APP。

    看起来就是一条普通的https链接,当然是我们在该链接域名根目录配置过的一个链接,也可以在该链接中放置对应的H5页面。当用户的点击该链接,只要手机中安装了支持该链接的APP就会直接进入到APP中。如果没有安装APP则会跳转到Safari浏览器中,展示H5页面。对用户来说则是一个无缝跳转的过程。

    配置Unuversal Links

    其实要做的很简单,但是坑多。

    1、登录苹果开发者账号进入对应的appid,开通Associated Domains

    image

    并在这个页面获取Team id 和 bundle id

    image

    2、创建文件名"必须"为apple-app-site-association的文件

    2.由于:Universal Links必须支持https,Universal Links配置的文件(apple-app-site-association文件)paths不能带query参数,微信使用Universal Links拉起第三方App时,会在Universal Links末尾拼接路径和参数,因此App配置(apple-app-site-association文件)的paths必须加上通配符

    (apple-app-site-association)文件格式为:

    {
        "applinks": {
            "apps": [],
            "details": [{
                "appID": "TeamId.BundledId",
                "paths": [ "*","/app/*"]
            }]
        }
    }
    
    

    path是设定你的app支持的路径列表,只有访问到域名下对应path的地址才会唤起APP。其中可以使用通配符或者/app/,/app/*是自己定义的路径。

    将你配置好的指定文件apple-app-site-association,上传到HTTPS服务器的根目录下或者.well-known目录下,app在请求下载这个文件时优先从.well-known下载,如果请求不到文件,才会从根目录下载。

    3.后台服务器配置

    把文件apple-app-site-association,放置在服务器的根目录(不要问我,让后台自己去理解),然后让他提供一个https的url地址,格式是“正式域名/apple-app-site-association”,如:https://www.baidu.com/apple-app-site-association

    达到的效果是,浏览器打开这个地址,可以下载这个文件。另外GET请求这个地址,返回文件的JSON内容。这里通过谷歌浏览器的Postman进行试验。

    [图片上传失败...(image-48fc38-1681194925825)]

    4、在工程配置以 applinks: 开头,后面写上域名.

    image

    补充说明:
    如果后台提供的url地址是https://www.baidu.com/apple-app-site-association。那么,
    Associated Domains中填写applinks:www.baidu.com
    代码注册方法及微信开放平台中都填https://www.baidu.com/

    5.微信开放平台配置

    填写正式域名。
    在微信开放平台(https://open.weixin.qq.com/)配置universal links

    image

    6.初始化代码

    // 微信SDK注册,universal link
    [WXApi registerApp:APP_ID universalLink: UNIVERSAL_LINK];

    补充说明:
    如果后台提供的url地址是https://www.baidu.com/apple-app-site-association。那么,
    Associated Domains中填写applinks:www.baidu.com
    代码注册方法及微信开放平台中都填https://www.baidu.com/

    相关文章

      网友评论

        本文标题:iOS微信授权登录中Universal Link(通用链接)的配

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