【发布时间】:2012-11-30 15:31:19
【问题描述】:
在我的服务中,我每 X 分钟跟踪一次我的位置。 我试试
LocationManager lm=(LocationManager)getApplicationContext().getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_COARSE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
String provider=lm.getBestProvider( criteria, true );
if (provider!=null){
lm.requestLocationUpdates(provider,5000,1,locationListenerNetwork);
}
使用网络位置,如果不可用,我尝试使用 gps 位置。
问题是,当提供者可用时,我会尝试询问位置
lm.requestLocationUpdates(provider,5000,0,locationListenerNetwork);
LocationListenerNetwork 是我的 LocationListener,但什么也没发生, 我的
onLocationChanged(Location location)
永远不会调用 LocationListenerNetwork 内部
如果我使用 GPS(具有 ACCESS_FINE_LOCATION 权限) onlocationchanged 被调用并且一切正常。
这仅在 Galaxy S3 jb (4.1) 中发生。 (正确设置) 在更新之前,在其他智能手机上,一切正常:
我试过了
- 银河 Nexus 4.2
- 银河 Nexus 4.1
- Nexus S 4.1
- 银河S
- 银河笔记
我的代码在任何地方都可以正常工作,但在 S3 JB 中我无法理解如何解决。 另一个奇怪的是,gmaps 也可以在没有 gps 的情况下完美地跟踪位置,所以这不会是设备问题。
【问题讨论】:
-
同样的问题:stackoverflow.com/questions/15747543/… 如果你发现了新的东西,请告诉我
标签: android networking location