Apple App Site Association (AASA) 生成器
本工具帮助你可视化并生成
apple-app-site-association
文件(用于 Universal Links 和微信的 ULink)。
生成后可以直接下载 JSON 文件并部署到服务器。注意:AASA 中每一项的
appID
格式为 TEAMID.BUNDLEID
,例如:ABCDE12345.net.lvtao.app
(请先添加应用并点击“生成并预览 JSON”)
使用教程与场景
部署步骤:
- 将下载的 JSON 文件重命名为
apple-app-site-association
(无扩展名)。 - 放置到你网站的
/.well-known/
目录下。 - 确保服务器返回的 Content-Type 为
application/json
,且使用 HTTPS。
在 iOS App 中使用:
- 在 Xcode 工程中,开启 Associated Domains 功能。
- 在 Associated Domains 中添加类似
applinks:yourdomain.com
的配置。 - 确保 App 的 Bundle ID 与 AASA 文件中对应的
appID
匹配。
微信 ULink 支持:
- 微信会读取你网站上的 AASA 文件来判断 Universal Links 是否可用。
- 确保 JSON 格式正确且能通过 HTTPS 访问。
- 将生成的 Universal Link 填入微信开放平台的配置中,例如
https://xxx.dev/ulink
。 - 这个配置的作用:当你的 App 在微信中分享链接或从微信返回时,微信会检查这个链接是否配置了 Universal Link,从而决定是打开网页还是直达 App。
常见使用场景:
- 从网页直接跳转 App(如商品详情页、活动页)。
- 通过微信分享链接点击后直达 App 对应页面。
- 营销推广链接跳转体验无缝衔接。
开发教程:如何使用 paths
paths
定义了哪些 URL 路径能够触发打开 App。例如"/news/*"
表示所有以/news/
开头的链接会跳转到 App。- App 收到跳转后,可以在
SceneDelegate
(iOS 13+)或AppDelegate
的application:continueUserActivity:restorationHandler:
中获取 URL。 - 例如定义了
"/news/info/*"
,当用户点击https://yourdomain.com/news/info/123
时,系统会拉起 App,并传入完整 URL,App 内可解析 ID123
。 - 在 uni-app 中,你可以在
App.vue
的onLaunch
或onShow
钩子中通过plus.runtime.arguments
获取启动参数,从而解析 Universal Link。 - 解析到参数后,你可以通过
uni.navigateTo
或uni.redirectTo
跳转到指定页面,例如跳转到新闻详情页并传递id=123
。 - 什么时候处理:
- 如果是 App 被唤起(冷启动),在onLaunch
中处理;
- 如果是已在前台或后台切换回来,在onShow
中处理。 - 这样就可以实现点击网页链接直达 App 内具体业务页面的效果。
- 可以定义多个路径,如
"/products/*"
、"/user/*"
,在 App 中做不同页面的路由跳转。 "*"
代表所有路径均跳转到 App,你需要在 App 内自行解析 URL 路径。