AppClip 的多个物理位置

Multiple Physical Locations for AppClip

我正在开发一个 AppClip,它可以检测用户的物理位置以显示 App Clip。苹果提到了一段代码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?

是的,您可以有多个位置,每个位置都有一个单独的 App Clip URL。这个示例代码实际上并没有从应用剪辑 URL 中提取任何信息,因为那是高度 app-specific.

在现实世界中,你会遇到类似

的情况
 https://example.com/appclip/location/42

作为您的 App Clip url,每个位置都有不同的 ID。

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

需要了解的基本知识 - App Clips 完全不依赖于定位服务

不仅如此 - App Clip 无法访问设备位置。 App Clip 不能询问 'where am I?'.

App Clip 可以询问 'Am I at this location?' - 只是为了确保确实在波士顿扫描了波士顿分公司的 QR 码。

体验不是由位置触发的 - 体验的唯一位置基础是 Apple 地图中设置的位置。当您可以在 Apple 地图中为您的客户传播位置时,他们的所有体验都会显示出来。

你引用的代码是如何定义App Clip询问半径的'Am I in this radius?'

如果您为每个博物馆分别定义二维码:

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

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