1

我想在 GPS 状态启用时调用一个方法。我写了这个,但它不起作用。

private LocationManager locManager;
private GpsStatus mStatus;

locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
locManager.addGpsStatusListener(this);

@Override
public void onGpsStatusChanged(int event) 
{
    mStatus = locManager.getGpsStatus(null);
    switch (event) {
        case GpsStatus.GPS_EVENT_STARTED:
            myMethod1();
            break;

        case GpsStatus.GPS_EVENT_STOPPED:
            myMethod2();
            break;

        case GpsStatus.GPS_EVENT_FIRST_FIX:
            break;

        case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
            break;
    }
}

谁能帮我?

4

2 回答 2

1
@Override
    public void onLocationChanged(Location location) {
    }

    @Override
    public void onProviderDisabled(String provider) {

            // GPS Enable
    }

    @Override
    public void onProviderEnabled(String provider) {
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
    }
于 2013-03-26T11:10:00.633 回答
0

您可以通过以下方式检测 GPS 的状态。

查看GpsStatus.Listener。使用 locationManager.addGpsStatusListener(gpsStatusListener) 注册它。

另请检查此 SO链接以获得更好的理解。

于 2013-03-26T11:19:00.583 回答