如何将 AppClip 添加到 Siri 的附近建议?
Posted
技术标签:
【中文标题】如何将 AppClip 添加到 Siri 的附近建议?【英文标题】:How to add AppClip to Siri's Nearby Suggestions? 【发布时间】:2020-06-24 15:51:01 【问题描述】:在视频Configure and link your app clipsApple 中显示,Siri 可以根据用户的位置建议您的 AppClip。
我在文档 https://developer.apple.com/documentation/app_clips 中找不到这个
这纯粹是基于其他用户使用此应用的位置,还是开发人员可以配置(可能基于地理编码区域)?
【问题讨论】:
看看 App Clip 会话 developer.apple.com/news/?id=dsd023qd 这张图片取自那个视频,视频中没有说明如何设置,否则我不会在这里问问题???? 【参考方案1】:据我在 WWDC 采访过的一位 Apple App Clips 工程师所说,为了将您的 App Clip 发布到 Apple Maps 上,您需要在 Apple 注册一家注册公司。这可以从 ios 10 开始,通过Apple Maps Connect 注册为小型企业。
“附近的 Siri”建议基于位置数据,仅当您的 App Clip 与 Apple 地图上的位置卡相关联时才会出现,因此您无法对此进行控制。下载 App Clips 后绝对有可能获取用户位置,如下面的demo 所示,但根据您的问题,我推测您想在下载之前提出 App Clip 建议(不在开发人员的控制范围内)。
如果您想将 App Clip 注册到某个位置,您需要等到 App Clip 完全可用并可在 App Store 上发布。当今年晚些时候 TestFlight 和 App Store Connect 获得对应用程序剪辑的支持时,您将能够从 NFC、二维码、地图等调用应用程序剪辑。因此,您需要在 Apple 注册您的业务,在 Apple Maps 中注册您的地点卡,然后启用 App Clips 以获取建议。
【讨论】:
【参考方案2】:有一个示例代码文档页面,代码中有 Widgets 和 App Clip:https://developer.apple.com/documentation/swiftui/fruta_building_a_feature-rich_app_with_swiftui
在上面的 App Clip 代码部分的链接中,有一个有效载荷可以配置纬度和经度。 Siri 应该会根据您在纬度和经度中输入的位置自动推荐 App Clip。
#if APPCLIP
func handleUserActivity(_ userActivity: NSUserActivity)
guard let incomingURL = userActivity.webpageURL,
let components = NSURLComponents(url: incomingURL, resolvingAgainstBaseURL: true),
let queryItems = components.queryItems else
return
if let smoothieID = queryItems.first(where: $0.name == "smoothie" )?.value
model.selectSmoothie(id: smoothieID)
guard let payload = userActivity.appClipActivationPayload,
let latitudeValue = queryItems.first(where: $0.name == "latitude" )?.value,
let longitudeValue = queryItems.first(where: $0.name == "longitude" )?.value,
let latitude = Double(latitudeValue), let longitude = Double(longitudeValue) else
return
let region = CLCircularRegion(center: CLLocationCoordinate2D(latitude: latitude,
longitude: longitude), radius: 100, identifier: "smoothie_location")
payload.confirmAcquired(in: region) inRegion, error in
if let error = error
print(error.localizedDescription)
return
DispatchQueue.main.async
model.applePayAllowed = inRegion
#endif
代码 sn-p 来自上面链接中的文档。
【讨论】:
当用户扫描标签并调用 handleUserActivity 时打开 AppClip 时运行此代码。在这种情况下,它使用位置来确定是否应该启用 Apple Pay。因此,此代码在已安装 AppClip 时运行。我正在寻找能够在安装之前在 Siri 建议中显示 AppClip 的代码!【参考方案3】:文档尚未详细说明,但您可以在此处阅读: https://developer.apple.com/documentation/app_clips
这里是https://developer.apple.com/documentation/app_clips/configuring_your_app_clip_s_launch_experience
在“查看高级 App Clip 体验”下
您应该能够将您的应用剪辑与物理位置相关联,该位置将在 AppStore Connect 中提供,并且通过此设置,Siri 建议应该能够根据用户位置选择您的应用剪辑
【讨论】:
以上是关于如何将 AppClip 添加到 Siri 的附近建议?的主要内容,如果未能解决你的问题,请参考以下文章