IOS重大变更定位服务可以很好地为我的应用程序监控位置变化,同时保持电池寿命。
是否有针对Android的类似服务或是否有可用的第三方应用?
答案 0 :(得分:4)
也许是第三方服务,但您可以使用定位器管理器的RequestLocationUpdates功能来指定所需位置更改的时间段/幅度。
我会说这是一个与发展有关的问题。
答案 1 :(得分:4)
使用Criteria
类来指定您的要求。
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_COARSE);
criteria.setPowerRequirement(Criteria.POWER_LOW);
...
String bestProvider = myLocationManager.getBestProvider(criteria, true);
Criteria
http://developer.android.com/reference/android/location/Criteria.html
答案 2 :(得分:0)
来自iOS文档
此接口仅在检测到设备关联的信号塔更改时才会发送新事件,从而减少更新频率并显着降低功耗。
我认为这个stackoverflow帖子能够更好地回答这个问题
答案 3 :(得分:0)
现实情况是android曾经让您做任何您想做的事情:编写服务,让它连续获取用户的位置,直到电池耗尽。从N开始,一切都消失了。现在使用O和P,他们告诉您在准则中将空白指向背景时可以期待的事情:
背景位置限制
为减少功耗,Android 8.0(API级别26)限制了后台应用检索用户当前位置的频率。应用每小时只能接收几次位置更新。
所以答案是否定的。在iOS中,您仍然可以从后台监视用户的位置,而“重大更改”服务的整个目的就是让您高效地做到这一点。