iOS Universal links通用链接制作

传统的方式:

通过URL scheme的方式跳转:
在你的项目里面添加一个url scheme就行了,需要使用Safari打开!!

MyApp://

Universal links:

(只支持iOS9以上!!!!)
我的需求是:短信推广,短信内容里面放公司的官网地址,如果已经安装app 点击官网地址直接跳进app内,都则打开展示官网宣传网页。

创建apple-app-site-association .json文件,内容如下:

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "teamId.com.DianApp.hello",
        "paths": ["/deaplink","/wwdc/news/","*"]
      },
      {
        "appID": "AppId.com.DianApp.hello",
        "paths": [ "*" ]
      }
    ]
  }
}

下载地址点击获取apple-app-site-association .json文件
teamId:起开发者中心找
AppId:项目的appid
com.DianApp.hello : 这个是你项目的bundle ID

文件配置完成之后,将其apple-app-site-association一定要传到域名根目录下,切记注意传的时候文件不能是.json带后缀的,隐藏的也不行,一定删除后缀就叫apple-app-site-association (一般交给后台去传了 交代清楚就行)

WebServer****需要支持****https****,且****https****使用有效的证书(是私密链接)

传进去得到链接:

https://yourdomain.com/apple-app-site-association
yourdomain.com为你的服务器域名

这个地址放浏览器打开正常来说是直接下载之前放服务器的apple-app-site-association文件
传完json文件拿到链接去苹果的工具里面验证(我试了试 这个无所谓 反正我验证的都是报错):
点击来此验证

出现404错误码提示,则为apple-app-site-association文件未上传成功,或者使用https://yourdomain.com/apple-app-site-association路径无法访问

服务器必须要支持https,而且需要支持TLS1.2协议以上,不过相信苹果强制支持https之后,这个坑就会慢慢填上了。现在还有很多童鞋的服务器使用的免费的证书,或者证书不被苹果信任,然后就会导致无法下载apple-app-site-association。

apple-app-site-association文件名千万不能写错啊

初次安装app会去请求apple-app-site-association文件,所以测试时有可能因为网络波动导致apple-app-site-association文件获取失败 这种情况多卸载几次 安装。

开发者中心找到你的应用App ID,编辑打开Associated Domains,然后把你项目相关的描述文件都编辑一下重新下载配置到Xcode

打开Xcode,在targets->Capabilities->Associated Domains打开,添加域名:

applinks:yourdomain.com

yourdomain.com一定是你们的域名 且和apple-app-site-association存放的域名是一个

系统会自动帮你写入.entitlements文件

完事之后运行安装项目

通用链接就是:https://yourdomain.com

快捷验证,在备忘录中输入https://yourdomain.com,长按这个链接弹出的“在xxxx打开”就好了。

iOS Universal links通用链接制作_第1张图片
image.png

备忘录和safari中都可以打开app,怎么分享到其他app里面就不行了?分享到微信的链接是 https://www.mydomain.com/share.html, 然后该网页中的“在app内打开”按钮配置的通用链接为https://www.mydomain.com/index.html。跨域的意思是说,通用链接 和 调用通用链接的网页不要使用同一域名。即如果通用链接域名为www.mydomain.com,则通用链接所处的网页域名就不能是http://www.mydomain.com。

你可能感兴趣的:(iOS Universal links通用链接制作)