Android设备永远不会收到位置更新

时间:2013-06-19 08:27:25

标签: android geolocation

我今天遇到了一个特殊的问题:我们需要用户地理位置来提供我们的服务,并且到目前为止它运行良好(在最近的Android Location API发布之前实现,还没有更新它)。我们这样注册

((LocationManager) ctx.getSystemService(Context.LOCATION_SERVICE))
        .requestLocationUpdates((provider == WPS)? 
        LocationManager.NETWORK_PROVIDER : LocationManager.GPS_PROVIDER,
        minTime, minDist, onChange(ctx, provider)); // onChange create a pending intent

我们称之为某些事件

Location gpsLocation = LocMngr.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Location wpsLocation = LocMngr.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

在运行Android 4.0.3和HTC Sense 4.0的HTC One S上,我们从不接收位置更新,最后一个已知位置为gps返回 null,为wps返回2天的位置即可。打开了WIFI,GPS和移动数据,我尝试在外面走动,看到设备试图获得gps修复,但显然它没有得到一个。其他设备使用相同的代码从gps或wps接收位置更新没有问题...

这只发生在这个设备上(它是一个测试设备,所以bootloader被锁定,没有root或任何其他可能破坏它的时髦东西)

我不知所措,有什么想法吗?

更新 由于我们重新启动设备问题没有再次发生,我仍然想知道导致问题的原因......

更新2

我昨天遇到了与Galaxy Nexus官方Android 4.2.2相同的问题。所以这似乎是Android的一个问题。

现在显然没有人知道如何解决这个问题,有没有办法检测Location API何时不再发送任何修复程序?除了检查lastKnownLocation()的时间戳?

0 个答案:

没有答案