0
我在仿真器上有一个工作应用程序,但是当我尝试在手机上时,它没有。 在模拟器上,我发一个假的位置到手机并使用此代码收到它没有问题:GPS在我的Android手机上无法正常工作
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]
我在做什么错?我尝试了内部/外部,谷歌地图甚至在我家里也很快找到我。
设备上是否启用GPS? – 2011-03-23 13:40:25
是的,当我发送一个虚拟位置时,信号在仿真器上的“顶栏”上触发。我的手机在Google地图上的GPS功能非常棒。 – Swan 2011-03-23 13:44:18
你有没有试穿标准?因为最后的LocationProvider可能不是你的GPS。 – papachan 2011-03-23 14:01:03