LocationManager.NETWORK_PROVIDER得不到位置信息
下面的代码,在android4.0真机上跑,GPS开启的时候locationListener有onLocationChanged发生,不开GPS自动选用NETWORK_PROVIDER的时候,locationListener的onLocationChanged就怎么都不发生。
权限都加了,室内、室外都不行。android版本问题还是手机问题还是哪个细节问题呢?
主程序:
mLocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if(mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) //根据GPS开关选择
{ mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, locationListener);}
else
if ( mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER))
{ mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0, locationListener);}
监听类:
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) { //当坐标改变时触发此函数,如果Provider传进相同的坐标,它就不会被触发
if (location != null)
System.out.println("Hi"+location.getLatitude());
else System.out.println("No");
}
//此处省略500字
};