0

我试图让我的 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 然后死亡。我不知道为什么,如果有人能提供帮助,那将是非常感谢的。

4

1 回答 1

1

一个不错的 gps 跟踪器指南:http ://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/

只需在 onLocationChanged 中添加 this.mLocation = location

他还将它包装成一个服务。

于 2013-09-28T01:03:25.020 回答