gpt4 book ai didi

iOS Location Services 访问和系统 Frequent Location

转载 作者:可可西里 更新时间:2023-11-01 05:32:53 27 4
gpt4 key购买 nike

我注意到 iPhone 上的“常用位置”似乎比监控 iOS 访问的应用程序 (https://developer.apple.com/reference/corelocation/clvisit) 使用的电量少得多。

可以在手机上通过设置 -> 隐私 -> 定位服务 -> 系统服务 -> 常用位置查看 iPhone 上的常用位置。

我想知道CLLocationManager的Visit监控服务是不是和iOS的Frequent location一样,还是苹果用的是不同的系统。如果 Apple 使用相同的服务,为什么它对电池没有任何影响?

最佳答案

这两个 API 用于不同的目的。

CLLocationManager API

此 API 旨在根据您的应用指示的要求向您的应用通知位置信息。当您的应用程序接收位置数据时,您可以选择一些特定条件,并且您的应用程序将继续接收该数据,直到不再需要它为止。例如,Uber 应用程序会在打开应用程序时请求位置数据,以便您安排行程,并会在您的行程接近时继续请求。

Frequent Locations/CLVisit API

相比之下,Frequent Locations 的不同之处在于它不会始终如一地向您的应用报告位置数据。相反,应用程序可以表明他们想知道用户是否访问了特定位置,如果用户访问了特定位置,iOS 将通知应用程序。位置往往有些粗糙。这将用于星巴克应用程序的示例,当您到达星巴克应用程序附近时,该应用程序可能会告诉您附近的商店限时促销,以鼓励您停下来。对于其中许多应用程序,用户通常会选择他们将标记为“最喜欢”的位置/商店的预定义位置列表,应用程序将使用该数据通知用户。

电池生命周期

由于这两种 API 的运行方式不同,因此电池使用情况的差异变得很明显。通过 CLLocationManager,我们开始并持续向应用程序报告准确/粗略的位置。除了蜂窝三角测量和 wifi 热点位置数据外,这里通常还使用 GPS。

但对于 CLVisit,我们通常只会在首次访问(或离开)所需位置时通知应用一次。因此,如果当前位置没有粗略地靠近或远离我们感兴趣的报告位置,iOS 不需要唤醒应用程序并进行任何额外处理。该设备可以使用蜂窝三角测量和 wifi 热点位置数据获得粗略位置。这种级别的位置详细信息通常不需要 GPS。由于您的蜂窝 radio 和 wifi 通常“始​​终开启”,因此使用这两种方法进行位置检测不会消耗任何额外的电量。

但它如何使用蜂窝网络和 wifi 确定我的位置?

解释您的设备如何从蜂窝或 wifi 信号中获取其位置超出了这个问题的范围。但这里有一篇很棒的帖子,解释了一些关于如何获得这些信息的信息。 How does Google know where I am? - security.stackexchange.com

关于iOS Location Services 访问和系统 Frequent Location,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41037711/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com