【问题标题】:Android requestLocationUpdates with a 15 minute interval is causing gps indicator to fire constantly间隔 15 分钟的 Android requestLocationUpdates 导致 gps 指示器不断触发
【发布时间】:2011-05-09 05:54:39
【问题描述】:

这是我正在使用的 requestLocationUpdates 调用,900000(15 分钟)和 500 米不应该导致 gps 不断发射,它真的会耗尽电池...

我知道这段代码没有帮助.. 但是有人知道为什么会发生这种情况吗?

在我的 onStartCommand 中

mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 900000, 500, locationListener);
mLocation = mlocManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

然后

private final LocationListener locationListener = new LocationListener() {
    public void onLocationChanged(Location location) {
        mLocation = location;
    }

    @Override
    public void onProviderDisabled(String arg0) {}
    @Override
    public void onProviderEnabled(String arg0) {}
    @Override
    public void onStatusChanged(String arg0, int arg1, Bundle arg2) {}
};

【问题讨论】:

    标签: android gps


    【解决方案1】:

    requestLocationUpdates() 的时间参数是一个提示,而不是规则——您可能会比这更频繁地获取位置。

    如果您想停止因 GPS 开启而消耗电池,请致电removeUpdates()

    【讨论】:

    • 好的,谢谢。我只是觉得这很奇怪,因为我的服务启动后 gps 图标永远不会消失。
    • @David:如果您在模拟器上进行测试,GPS 图标永远不会消失。这是模拟器中长期存在的缺陷。在设备上,当您拨打removeUpdates() 时,GPS 图标应该会消失,前提是没有其他应用程序保持 GPS 处于开机状态。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-15
    • 2020-07-22
    • 2014-07-03
    • 2020-12-15
    相关资源
    最近更新 更多