У меня есть рабочее приложение на эмуляторе, но когда я пробую на телефоне, его нет.На эмуляторе я отправляю поддельную позицию на телефон, и он получает ее без проблем с этим кодом:
private class GPSListener implements LocationListener{
private ProgressDialog waitingDialog;
public GPSListener(Context c) {
this.waitingDialog = ProgressDialog.show(c, "", c.getString(R.string.sWaitingMessage), true);
}
@Override
public void onLocationChanged(Location loc){
int longitude = (int) Math.round(loc.getLongitude() * 1000000);
int latitude = (int) Math.round(loc.getLatitude() * 1000000);
this.waitingDialog.dismiss();
GeoPoint currentLocation = new GeoPoint(latitude, longitude);
GPSPosition.this.whenPositionFound(currentLocation);
}
@Override
public void onProviderDisabled(String provider){}
@Override
public void onProviderEnabled(String provider){}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {}
}
Однако, когда я пытаюсь на моем телефоне, onLocationChanged () никогда не вызывается.Я активирую поиск GPS с этим:
LocationManager locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
GPSListener gpsListner = new GPSListener(c);
locManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, gpsListner);
и вот мои журналы, полные этого:
03-23 14:04:28.411: VERBOSE/GpsLocationProvider(148): SV count: 0 ephemerisMask: 0 almanacMask: ffffffff
03-23 14:04:28.411: DEBUG/RPC(148): written RPC packet size: [24]
03-23 14:04:28.421: DEBUG/RPC(148): read RPC packet
03-23 14:04:28.431: DEBUG/RPC(148): read RPC packet size: [284]
03-23 14:04:28.431: VERBOSE/libgps(148): DeferredActionThread pthread_cond_wait returned
03-23 14:04:28.431: DEBUG/RPC(148): written RPC packet size: [24]
03-23 14:04:28.431: DEBUG/RPC(148): read RPC packet
03-23 14:04:28.431: DEBUG/RPC(148): read RPC packet size: [284]
03-23 14:04:28.431: VERBOSE/libgps(148): DeferredActionThread pthread_cond_wait returned
03-23 14:04:28.431: DEBUG/RPC(148): written RPC packet size: [24]
03-23 14:04:28.441: DEBUG/RPC(148): read RPC packet
03-23 14:04:28.441: DEBUG/RPC(148): read RPC packet size: [284]
03-23 14:04:28.441: VERBOSE/libgps(148): DeferredActionThread pthread_cond_wait returned
03-23 14:04:28.441: DEBUG/RPC(148): written RPC packet size: [24]
03-23 14:04:28.451: DEBUG/RPC(148): read RPC packet
03-23 14:04:28.451: DEBUG/RPC(148): read RPC packet size: [284]
Что я делаю не так?Я пробовал внутри / снаружи, Google Map очень быстро и быстро находит меня даже в моем доме.