我已经查看了这个页面:http://developer.android.com/reference/android/provider/Settings.Secure.html#LOCATION_MODE,但我仍然感到困惑。
我知道位置模式应该返回一个整数。省电模式是2,高精度模式是3,如果GPS关闭,则应返回0。
我没有问题获取当前位置...
但是当手机的位置模式设置为仅设备时,我必须使用LocationManager的GPS_PROVIDER。这不如NETWORK_PROVIDER准确。我想做一个if、else或case语句,允许我获取当前位置模式,如果设置为高精度或省电,则使用NETWORK_PROVIDER,但如果设置为仅设备,则使用GPS_PROVIDER。
我知道位置模式应该返回一个整数。省电模式是2,高精度模式是3,如果GPS关闭,则应返回0。
我没有问题获取当前位置...
LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
//Location location = manager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Location location = manager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
double longitude = location.getLongitude();
double latitude = location.getLatitude();
String stlongitude = Double.toString(longitude);
String stlatitude = Double.toString(latitude);
但是当手机的位置模式设置为仅设备时,我必须使用LocationManager的GPS_PROVIDER。这不如NETWORK_PROVIDER准确。我想做一个if、else或case语句,允许我获取当前位置模式,如果设置为高精度或省电,则使用NETWORK_PROVIDER,但如果设置为仅设备,则使用GPS_PROVIDER。