1、首先得在苹果开发平台开启Associated Domains服务
在苹果开发平台,Certificates, Identifiers & Profiles
页面选择Identifiers
选择对应的App ID
也就是我们所说的Bundle ID
,或者我们重新生成一个也是可以的,然后选择如下的服务开启,如果是用已有的APP ID
开启服务,且生成了profile
文件的,需要重新生成profile
后续打包使用。
2、在uniapp项目根目录下创建apple-app-site-association
文件,不需要带任何的后缀;文件内容如下
{
"applinks":{
"apps":[],
"details":[
{
"appID":"xxx.kkk",
"paths":[ "*" ]
}]
}
}
xxx是苹果开发者中心里面的
团队ID(Team ID)。
kkk是苹果开发者中心里面的App ID(Bundle ID)。
3、把配置好的apple-app-site-association
放到服务器上
放到服务器的根目录或者在域名服务器根目录添加.well-known
文件夹,将文件上传到.well-known
文件夹下,苹果官方推荐后者,因为app首次访问通用链接会从域名.well-known
下找apple-app-site-association
文件,没找到才在域名根目录下寻找(后面的这种方法还没试过,这里只做记录使用)。且必须是https
而且后缀必须得加斜杠(微信开放平台要求),配置好的地址是必须浏览器可以打开,如下
4、manifest.json文件配置,关联域名
例如最后配置完得到的链接为https://hahaha.com/apple-app-site-association/
"ios" : {
"dSYMs" : false,
"capabilities" : {
"entitlements" : {
"com.apple.developer.associated-domains" : [
//把这里改成你配置的网址
"applinks:www.hahaha.com"
]
}
},
"urlschemewhitelist" : "alipays,alipay,safepay,weixin,wechat",
"idfa" : false
},
"sdkConfigs" : {
"payment" : {
"appleiap" : {},
"weixin" : {
"__platform__" : [ "ios", "android" ],
"appid" : "这里是微信开放平台申请的appid",
//这里是刚才部署好的apple-app-site-association地址
"UniversalLinks" : "https://hahaha.com/apple-app-site-association/"
},
"alipay" : {
"__platform__" : [ "ios", "android" ]
}
},
},
配置完成可以查看app模块配置
5、微信开放平台设置
配置好
Bundle ID
和Universal Links
等待通过即可。