Я использую службу определения местоположения для получения широты и долготы моего местоположения. При запуске моей программы это даст мне неправильную широту и долготу. Как я могу точно получить информацию о моем текущем местоположении?Есть ли какие-либо настройки в мобильном устройстве / устройстве?
String locationProvider = LocationManager.GPS_PROVIDER;
if(!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER )) {
locationProvider = LocationManager.NETWORK_PROVIDER;
}
Log.w(TAG,"CurrentLocProvider :"+locationProvider);
location=locationManager.getLastKnownLocation(locationProvider);
Log.i(TAG,"Location :"+location);
if(location!=null){
Log.i(TAG,"Location Lat :"+location.getLatitude());
latitude = Double.toString(location.getLatitude());
longitude = Double.toString(location.getLongitude());
txtView.append("\nLatitude : "+latitude+"\n Longitude : "+longitude);
}
Через некоторое время
public void onLocationChanged(Location location) {
Log.i(TAG,"Lat :"+location.getLatitude();
Log.i(TAG,"Long :"+location.getLongitude();
}
Также дает мне неправильное местоположение. Иногда США, В другом устройстве Китай. В другом устройстве этодает разные результаты?Как я могу получить точный результат?
Спасибо, ааре.