首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android:从固定Intervall的Service获取GPS位置

Android:从固定Intervall的Service获取GPS位置
EN

Stack Overflow用户
提问于 2014-01-29 10:44:49
回答 1查看 862关注 0票数 1

我希望在很长一段时间内(3-4小时)从服务中接收gps数据,就像每3分钟接收一次一样。这一切都很好,但我有一些问题,哪种方法是最好的电池寿命。

  1. 启动服务,在服务的onCreate中创建部分唤醒,启动每3分钟执行一次的计时器。从计时器内部获取位置数据。当服务停止时( 3-4小时后),释放唤醒锁。
  2. 使用AlarmManager每3分钟启动一次服务。在服务内部创建部分唤醒锁,获取位置数据,然后释放唤醒锁并停止服务。
  3. 与#1相同,但不是计时器,而是通过requestLocationUpdates()方法设置间隔。(我不喜欢这种方法的原因是,当我使用计时器时,我可以得到大约5个位置(每3分钟)并选择最准确的位置,但是当我用requestLocationUpdates()设置空隙时,我只能得到一个位置,这可能是不准确的,还是我错了?)

我不喜欢在3到4个小时内留下部分唤醒的想法,这就是为什么我认为#2可能是一个更好的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2014-01-29 10:53:15

//以米为单位更改更新的最小距离

代码语言:javascript
复制
private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters

//更新之间的最短时间(毫秒)

代码语言:javascript
复制
private static final long MIN_TIME_BW_UPDATES = 1000; // 1 sec

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,locationManager;LocationManager = ( locationManager ) mContext.getSystemService(LOCATION_SERVICE);

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21428651

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档