第二章 轻 App 调用
本节展开讲述如何调用轻 App ,如何展示不同的轻 App 预览卡片,以及轻 App 以何种方式接收到哪些数据。
调用流程
轻 App 一经调用即启用。正如 iOS 通用链接流程,调用流程不是一次点击那么简单。调用流程由 Apple 搭建,因此目前只能基于 Apple 的基建工具打造。如何获取轻 App URL 尚不明确,有了轻 App URL,您可发送短信或展示二维码。待 Apple 此方面流程完全公布后,我们会立即更新这份手册。
调用方式
Safari 浏览器横幅
为网站顶部添加元数据,创建 Safari 浏览器 Smart App Banner 智能横幅
示例:下图为您需要添加的代码片段:
如设备系统为 iOS 13 或更早版本,需添加 app-id。在这种场景下点击横幅后,用户进入应用商店下载完整 App。
此次点击横幅的 URL 即为调用 URL
iMessages
用户分享网址时展示了智能横幅,该信息中的横幅将调起轻 App。
这个场景中,分享网址的 URL 中配置了调用 URL。
(NFC)标签
轻点 NFC 标签,如该标签与轻 App 关联,即调起轻 App。
该 NFC 标签中配置了调用 URL。
使用任一种基建工具即可创建 NFC 标签,只要能被 Apple 设备读取。
手机锁屏状态下可用。
二维码
扫描二维码即可调起被编码了调用 URL 的轻 App。
必须使用相机应用或 Apple 原生条形码读取器扫描轻 App 二维码。
Apple 计划发布中间含有 NFC 标签、四周为可扫描的环形码。Apple 希望 iOS 用户能够熟悉这项操作,通过轻点或扫描即可跳转到轻 App。
地理位置
Siri 基于地理位置提供推荐。Apple 还未完全公布,创建流程待更新。
地图
地图中的标签也可以调起轻 App。这里详细讲述了如何验证轻 App 的调用 URL。
每个轻 App 调用流程都有调用 URL 参与,通常以“https://mygreatapp.com/”起始,scheme 为“https”,主机或域名为“mygreatapp.com”。
iOS 必须验证调用 URL,来确认轻 App 确实为该域名所发布。如果不是该域名发布的轻 App,用户很有可能暴露于作弊或其他恶意行为。
Scheme 是“https”,而不是“http”,调用 URL 将通过 SSL 证书进行验证,确保轻 App 开发者是域名所有者。
iOS 系统通过 AASA(Apple-App-Site-Association)文件验证域名。这个文件通常用来验证某个域名的通用链接。
要验证 iOS 14 轻 App,您必须在 AASA 文件中添加以下代码:
{
"appclips": {
"apps": ["ABCED12345.com.fruitstore.feedmeapp.Clip"]
}
...
}
关于 AASA 文件的重要提示:2020 WWDC 开发者大会上 Apple 宣布将改善设备获取 AASA 文件的机制。设备不再直接从 AASA 文件中读取某应用的域名,新的机制是 Apple 获取 AASA 文件并记录在 CDN,设备访问 Apple CDN 存储的 AASA 汇总文件,便于读取与操作。
轻 App 意味 AASA 文件数量增加,因此 Apple 改善机制将提升效率。
您可在 App Store Connect,Domain URL Status 页面,找到某个特定轻 App 的调用 URL 的缓存状态:
缓存状态(Cache Status)表明了轻 App 在用户设备上的调用情况。点击“故障排查状态”(Debug Status),即允许 Apple 访问您的 AASA 文件并验证 URL。