繁体   English   中英

Android FusedLocationApi何时使用PRIORITY_BALANCED_POWER_ACCURACY更新位置

[英]When does the Android FusedLocationApi update location using PRIORITY_BALANCED_POWER_ACCURACY

将优先级设置为PRIORITY_HIGH_ACCURACY时,我已为我的Android应用程序设置了Google的Fused Location API,并且能够接收位置更新(每分钟GPS坐标,因为我的更新间隔设置为60000),但使用“ PRIORITY_BALANCED_POWER_ACCURACY”时却未成功

我的问题如下:PRIORITY_BALANCED_POWER_ACCURACY何时/如何实际提供更新的位置? 显然,它根本没有使用gps,因此在跳到不同的wifi网络/基站时会调用onLocationChanged()吗?

我问是因为我需要一种测试方法,并且不确定模拟器是否可以执行此操作。 我有实体的Android手机,但只有wifi。

基于(setInterval()/ setFastestInterval或setSmallestDisplacement())使用PRIORITY_HIGH_ACCURACY时会调用TLDR onLocationChanged(),但使用PRIORITY_BALANCED_POWER_ACCURACY时何时会调用onLocationChanged()?

我非常感谢您的帮助,谢谢!

PRIORITY_BALANCED_POWER_ACCURACY何时/如何实际提供更新的位置? 显然,它根本没有使用GPS,因此在跳到不同的wifi网络/手机发射塔时会调用onLocationChanged()吗?

答:低功耗影响。 这些应用程序应考虑将PRIORITY_BALANCED_POWER_ACCURACY与更快的setFastestInterval(long) (例如1分钟)和较慢的setInterval(long) (例如60分钟)结合使用。 仅会为setInterval(long)设置的时间间隔分配责任,但仍可以以setFastestInterval(long)的速率接收其他应用程序触发的位置。 这种请求样式适用于许多位置感知应用程序,包括后台使用情况。 如果在收到更新(例如使用网络)后执行繁重的工作,请也要setFastestInterval(long)

但是使用PRIORITY_BALANCED_POWER_ACCURACY时何时调用onLocationChanged()

答案: onLocationChanged()将在基于setInterval() & setFastestInterval().进行位置更改时调用setInterval() & setFastestInterval().

编辑:

PRIORITY_BALANCED_POWER_ACCURACYPRIORITY_HIGH_ACCURACY类型之间的区别

与优先级常量一起使用,例如PRIORITY_HIGH_ACCURACY。 不接受其他值。

请求的优先级是向LocationClient强烈提示使用的位置源。 例如,PRIORITY_HIGH_ACCURACY更有可能使用GPS,PRIORITY_BALANCED_POWER_ACCURACY更有可能使用WIFI和基站定位,但它还取决于许多其他因素(例如哪些来源可用),并且取决于实现方式。

我需要一种测试方法,并且不确定模拟器是否可以执行此操作。

答:您可以使用发送假位置在模拟器中测试此方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM