iOS位置服务访问和系统频繁位置

iOS位置服务访问和系统频繁位置,第1张

概述我注意到iPhone上的Frequent Location似乎比监控iOS Visits( https://developer.apple.com/reference/corelocation/clvisit)的应用程序使用更少的电池. iPhone上的频繁位置可以通过设置 – >在手机上查看.隐私 – >定位服务 – >系统服务 – >频繁的地点. 我想知道来自CLLocationManager 我注意到iPhone上的Frequent Location似乎比监控iOS Visits( https://developer.apple.com/reference/corelocation/clvisit)的应用程序使用更少的电池.

iPhone上的频繁位置可以通过设置 – >在手机上查看.隐私 – >定位服务 – >系统服务 – >频繁的地点.

我想知道来自CLLocationManager的访问监控服务是否与iOS常用位置相同,或者它是否在Apple使用的不同系统上.如果Apple使用相同的服务,为什么它对电池没有任何影响?

解决方法 这两个API用于不同目的.

CLLocationManager API

此API旨在根据您的应用指示的要求为您的应用提供位置信息.您可以在应用收到位置数据时选择一些特定条件,并且您的应用将继续接收该数据,直到不再需要它为止.举例来说,优步应用程序会在打开应用程序时请求位置数据,以便您可以安排乘车,并在您的乘车接近时继续请求它.

Frequent Locations/CLVisit API

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

电池寿命

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

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

但它如何使用蜂窝和wifi来确定我在哪里?

解释您的设备如何从蜂窝或wifi信号中获取它的位置超出了这个问题的范围.但这里有一篇很好的文章,解释了如何得出这些信息. How does Google know where I am? – security.stackexchange.com

总结

以上是内存溢出为你收集整理的iOS位置服务访问和系统频繁位置全部内容,希望文章能够帮你解决iOS位置服务访问和系统频繁位置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1062895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存