AppClip的多个物理位置

问题描述

我正在开发一个AppClip,它可以检测用户的实际位置以显示该应用程序剪辑。苹果提到了一段代码here

 func location(from url:URL) -> CLRegion? {
   let coordinates = CLLocationCoordinate2D(latitude: 37.334722,longitude: 122.008889)
   return CLCircularRegion(center: coordinates,radius: 100,identifier: "Apple Park")
 }

我的问题是,由于我的应用需要几个博物馆的位置才能显示AppClip,是否可以添加多个位置?

解决方法

是的,您可以有多个位置,每个位置都有一个单独的应用程序剪辑URL。实际上,此示例代码并未从应用剪辑的URL中提取任何信息,因为这是与应用高度相关的。

在现实世界中,您会遇到类似的情况

 https://example.com/appclip/location/42

作为您的应用剪辑网址,每个位置都有不同的ID。

然后,您的代码将需要找出位置ID为42的坐标,并使用这些坐标来检查用户的当前位置

,

需要了解的基本知识-应用程序剪辑完全不依赖于位置服务

不仅如此-App Clip无法访问设备位置。 App Clip不能问“我在哪里?”。

应用程序剪辑可以询问“我在这个位置吗?” -只是要确保确实在波士顿扫描了波士顿分公司的QR​​码。

体验不是由位置触发的-体验的唯一位置基础是在Apple Maps中设置的位置。由于您可以为客户在Apple Maps中分散位置,因此他们的所有体验都会显示出来。

您引用的代码是如何定义App Clip询问“我在这个半径范围内”的半径吗?

例如,如果为每个博物馆定义单独的QR码:

https://museums.com/nyc/123 https://museums.com/london/356 https://museums.com/paris/789

您应该使用URL来理解应该在引用的代码中定义的半径。