Google在这里说:
Google Play服务位置API比Android框架位置API(android.location)更为可取,可为您的应用增加位置感知功能。如果您当前正在使用Android框架位置API,则强烈建议您尽快切换到Google Play服务位置API。
谁能向我解释为什么(如果我需要)切换到新的API?
我认为核心区别在于FusedLocationProvider同时使用物理传感器和Google Play服务,而其他(位置管理器/位置列表器)则使用gps和网络等物理传感器。
FusedLocationProvider
FusedLocationProvider使用硬件和Google Play服务的组合来找到请求的上下文(位置)。
优点:
由于它可以在gps和基于WiFi的位置之间切换,因此可以提供更高的精度,并且耗电量更少。
对您透明地进行优化。通过使用位置缓存避免繁重的处理。如果用户拥有许多位置感知应用程序,则不会浪费时间和资源等待获取新位置并使用以前的位置。
Google Play服务3.2对基于位置的服务进行了多项增强。现在,Fused Location Provider支持在请求位置更新时选择低功耗模式选项,并支持注入模拟位置的功能-使您能够在各种模拟条件下更有效地测试应用程序。博客
当希望节省电池电量并使用粗略更新时,FLP不使用全球定位服务(GPS),而是使用WiFi和基站信号。
融合的API提供了3个位置提供程序。
HIGH_ACCURACY模式使用所有位置提供者
BALANCED_POWER模式不包括GPS
NO_POWER模式使用其他应用程序中的位置
缺点
位置管理器使用gps速度较慢但很准确,这是精度和电池消耗之间的权衡。
如果您打算在Amazon,F-Droid或Play商店以外的任何其他平台上发布它,请使用LocationListener或同时实现两者。很多人不希望Google跟踪他们的一举一动
对我来说,更准确的是位置管理器,因为它可以在所有平台上使用,而无需Google Play商店。但是它需要一些时间,位置检测速度取决于某些因素,例如您是否在空旷的地方,天气等
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句