Я разрабатываю приложение для Android, чтобы получить текущую долготу и широту от GPS. У меня есть следующий кодНевозможно получить долготу и широту в android
public class setting extends Activity {
TextView longval;
TextView latval;
@Override
public void onCreate(Bundle savedInstanceState){
/** Called when the activity is first created. */
super.onCreate(savedInstanceState);
setContentView(R.layout.setting);
longval = (TextView)findViewById(R.id.longitudefield);
latval = (TextView)findViewById(R.id.latitudefield);
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
//Location lastLocation = locationManager.getLastKnownLocation(locationManager.GPS_PROVIDER);
LocationListener locationListener = new myLocationListener();
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
}
class myLocationListener implements LocationListener{
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
if(location != null){
double longitude = location.getLongitude();
double latitude = location.getLatitude();
//Toast.makeText(getApplicationContext(), Double.toString(longitude), Toast.LENGTH_SHORT).show();
longval.setText(Double.toString(longitude));
latval.setText(Double.toString(latitude));
}
}
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
}
Я не уверен, когда я положил его в мой телефон (Galaxy Nexus). Я увидел значок GPS на панели, расположенной в верхней части моего телефона. Однако текстовое поле не обновляется, чтобы показать мою текущую долготу и широту. Я хотел бы спросить, является ли это проблемой моего кода или моего телефона? Я просто переключаю Wi-Fi без мобильных данных. Кажется, что onLocationChanged не вызывается.
Спасибо всем!
Предоставление [SSCE] (http://sscce.org/) - это начало. А поскольку «кажется, что onLocationChanged не вызывается», вы должны это проверить. – keyser
Опубликуйте свой логарифм. Есть ли там очевидные ошибки? –
Я только что использовал эмулятор, чтобы исправить эти два значения, и они правильно отображаются в эмуляторе. Однако я не смог сделать это на своих мобильных устройствах. – user1311794