我试图让我的GPS在服务中工作,但它无法正常工作。 GPS位可单独工作,但不在服务中。
我已尝试使用System.out.println()调试并喜欢它停止工作的地方,但无法解决为什么它看起来都很好。
public int onStartCommand(Intent intent, int flags, int startId) {
System.out.println("test 1");
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
System.out.println("test 2");
LocationListener lli = new myLocationListener();
System.out.println("test 3");
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000, 10, lli);
System.out.println("test 4");
// We want this service to continue running until it is explicitly
// stopped, so return sticky.
return START_STICKY;
}
class myLocationListener implements LocationListener{
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
if(location != null){
pet.setMeter();
}
}
进入测试4然后死亡。我迷失了为什么如果有人能帮助那将是非常棒的谢谢。
答案 0 :(得分:1)
一个不错的gps跟踪指南:http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/
只需要在onLocationChanged
中添加this.Location = location他还把它包装成服务。