背景
小程序复制下载链接,h5打开链接,唤起app的方式
- 传统方式: schema (区分安卓/ios<9-iframe方式)(ios>0-a标签方式—)
- universal link方式(配置
apple-app-site-association
文件) - applinks (配置
assetlinks.json
文件)
设计思路
踩坑记录
applinks
的配置不支持h5的hash
模式,所以h5页面的路径一定要是history
模式,不要带#
iOS9屏蔽了
iframe
这个标签,所以ios大于9时,a标签href跳转(schema方式),小于9时,iframe标签跳转(schema方式)如果根域名或者根域名下的
./well-known
下配置了apple-app-site-association
(就是此文件名,不需要后缀)文件,则顶部会出现注册的app快捷入口(如果未注册,手机安装了也会出现),配置成功后可以根域名
或者根域名下./well-known/apple-app-site-association
访问看看是否配置成功。1
2
3
4
5
6
7
8
9
10
11
12
13{
"applinks": {
"apps": [],
"details": [
{
"appID": "SQ8XXXP7BG7.com.XX.travel.cst",
"paths": [
"/utickect/ccb/*", // h5页面的路径,*可以匹配测试or生产环境的路径
]
}
]
}
}如果根域名或者根域名下的
./well-known
下配置了assetlinks.json
文件,则短信或者扫码、微信引导浏览器打开可以直接唤起app,不会停留在h5页面,配置成功后可以根域名
或者根域名下./well-known/assetlinks.json
访问看看是否配置成功。1
2
3
4
5
6
7
8
9
10
11
12[
{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.xx.xxx.cst",
"sha256_cert_fingerprints": [
"FB:FE:BxXX:8F:60:4E:BXXXXXF:E4:93:B9XXX3:D8:43:XXXD:54"
]
}
}
]