Android - 如果启用或禁用GPS,有没有办法收听

时间:2011-09-22 21:05:02

标签: android gps

我编写此代码以接收位置更新 -

PendingIntent launchIntent = PendingIntent.getBroadcast(context, 5000, intent, 0);
manager.requestLocationUpdates(selectProvider(), 0, 0, launchIntent);

我选择gps提供商(如果可用),否则选择网络提供商。如果以后启用它,有没有办法可以切换回gps?

启用或禁用gps提供程序时,系统是否广播了意图?我可以为它设置一个监听器吗?

2 个答案:

答案 0 :(得分:7)

您可以检测GPS状态是否已更改,例如如果获得GPS卫星定位。

看看GpsStatus.Listener。将其注册为locationManager.addGpsStatusListener(gpsStatusListener)

答案 1 :(得分:5)

public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub

}

public void onProviderEnabled(String provider) {
    Toast.makeText(this, "Enabled new provider " + provider,
            Toast.LENGTH_LONG).show();

}

public void onProviderDisabled(String provider) {
    Toast.makeText(this, "GPS disconnected", Toast.LENGTH_LONG);
        Toast.makeText(getApplicationContext(), "Connected",
                Toast.LENGTH_LONG);


    Toast.makeText(this, "Please Switch on GPS." + provider,
            Toast.LENGTH_LONG).show();
}