小编use*_*280的帖子

Android Locationprovider 需要太长时间才能暂时不可用

根据这篇文章(UPD:链接已删除,因为它现在会导致一些废话),在请求位置更新时设置minTime将导致提供程序将自身设置为 TEMPORARILY_UNAVAILABLE 持续minTime毫秒,以节省电池电量。在此不活动期间,GPS 提供商将自行关闭,并且 GPS 图标将消失。

在我的代码中,我将 minTime 设置为大约 30 秒,但提供程序仅每五分钟变为 TEMPORARILY_UNAVAILABLE 一次。当它发生时,它最多只会保持 TEMPORARILY_UNAVAILABLE 十秒钟,然后再重新打开。我之所以知道这一点,是因为 GPS 图标只消失了十秒钟,然后又重新出现。

我知道minTime设置只是 Android 位置提供程序的粗略指导...但我很确定 5 分钟与 30 秒完全不同。有谁知道这是怎么回事?minTime和 requestLocationUpdates 实际上是如何工作的?

位置管理器设置:

locManager = (LocationManager) getSystemService(LOCATION_SERVICE);
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,30000L, 0, locListener);
Run Code Online (Sandbox Code Playgroud)

本地监听器:

public void onLocationChanged(Location loc) {
    //Keep track of best location
    //Having a location > no location
    if (bestLocation == null)
        bestLocation = loc;
    //More accuracy > Less accuracy
    else if (loc.getAccuracy() <= bestLocation.getAccuracy())
        bestLocation = …
Run Code Online (Sandbox Code Playgroud)

android location

5
推荐指数
1
解决办法
2246
查看次数

标签 统计

android ×1

location ×1