uniapp开发ios&android可拉起app的辛酸历程
- IOS配置指南
- 1、登录[apple Developer](https://developer.apple.com/account/resources/identifiers/list)账户找到自己开发的对应的项目
- 2、确保对应项目的Associated Domains是打开状态
- 3、本地创建一个 apple-app-site-association 文件格式如下(无后缀名)
- 4、联系公司网管(运营)将步骤3中的文件放到域名服务器根目录下或者.well-known文件夹下以确保可以访问
- 5、uni-app的manifest.json配置如下
- 总结
- ANDROID AppLink配置指南
- 1、 也需要配置一个assetlinks.json文件放在服务器上。确保可以访问
- 2、manifest写入如下配置
- 总结
- ANDROID Schema配置指南
- 修改manifest.json
IOS配置指南
1、登录apple Developer账户找到自己开发的对应的项目
2、确保对应项目的Associated Domains是打开状态
如果没有打开则需要打开此配置,打开此配置后需要重新生成IOS应用构建打包所的profile文件才会使此配置生效 同时需要注意上面👆标记的appId和bundleId 后面会用到
3、本地创建一个 apple-app-site-association 文件格式如下(无后缀名)
{"applinks": {"apps": [],"details": [{"appID": "TEAM_ID.BUNDLE_ID","paths": ["/universal_links/*"]}]}
}
4、联系公司网管(运营)将步骤3中的文件放到域名服务器根目录下或者.well-known文件夹下以确保可以访问
这里需要是https协议
网上资料有的说需要配置返回的application/type为json,有的又说不需要 可以都试下
5、uni-app的manifest.json配置如下
注意 不用带协议 以applinks开头
总结
至此 ios通用链接配置完毕,这里有一个大坑,如果上述步骤配置完成之后,用huildx打个包发布至苹果testfight,必须在testfight下载此app后,在当前设备打开浏览器输入,https://+放置配置文件的服务器+第三步中的app标识符后缀一步步来绝壁能成功 贴图
ANDROID AppLink配置指南
1、 也需要配置一个assetlinks.json文件放在服务器上。确保可以访问
[ { "relation": ["delegate_permission/common.handle_all_urls"],"target": {"namespace": "android_app","package_name": "com.example.myapp","sha256_cert_fingerprints": ["XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX"]}}
]
relation是固定内容,namespace也是固定内容,package_name填自己app的包名,sha256填密钥内容,每一个安卓app打包都需要.keyStore文件,密钥从这里解析,解析方法不是本文的内容我就不东施尿频了
2、manifest写入如下配置
"intentFilters" : [{"action" : {"name" : "android.intent.action.VIEW"},"category" : {"name" : ["android.intent.category.DEFAULT","android.intent.category.BROWSABLE"]},"data" : [{"scheme" : "https","host" : "填入","pathPrefix" : "/填入app前缀"},]}],
action和category为固定搭配 data根据个人项目信息填入,
总结
嘿嘿 这个方式我没有成功,构建打包后生成了 xxx.aab文件,可以在网上搜索资料将aab文件转化成xxx.apk文件(这个也不是本文的范围,故不赘述),在安卓设备上安卓此apk文件后打开浏览器输入应用链接并没有生效。(猜测可能ios是通过testfight下载处罚了某种机制,android是通过apk安装的没有触发,但是也无从考证)别慌,uniapp安卓应用拉起我另有办法
ANDROID Schema配置指南
修改manifest.json
Schema也可以用于拉起安卓app,同时也无需复杂的配置。只需要一行
在android打包配置下新增"schemes" : [ "abcdefg(diy链接)" ]
,修改后直接部署打包到安卓机器,然后运行另一个app应用,使用 plus.runtime.openURL('abcdefg://');
即可直接实现跳转