在android中永久检查GPS状态

在android中永久检查GPS状态,android,gps,Android,Gps,我有一个android应用程序,我想在我的应用程序中永久显示GPS状态,我以前使用定时器每3秒检查一次GPS状态,它工作正常,但我现在不想使用定时器。我只想当GPS打开时,我的应用程序通知,当GPS关闭时通知。您可以使用Android广播接收器机制 首先,在AndroidManifest.xml中,在应用程序标记的旁边定义广播接收器 <receiver android:name="com.yourpackage.GPSBroadCastReceiver"> <intent

我有一个android应用程序,我想在我的应用程序中永久显示GPS状态,我以前使用定时器每3秒检查一次GPS状态,它工作正常,但我现在不想使用定时器。我只想当GPS打开时,我的应用程序通知,当GPS关闭时通知。

您可以使用Android广播接收器机制

首先,在AndroidManifest.xml中,在应用程序标记的旁边定义广播接收器

 <receiver android:name="com.yourpackage.GPSBroadCastReceiver">
  <intent-filter>
    <action android:name="android.location.PROVIDERS_CHANGED" />
  </intent-filter>
</receiver>

此外,您还可以使用广播接收器
  public class GPSBroadCastReceiver  extends BroadcastReceiver
  {   
  @Override
  public void onReceive( Context context, Intent intent )
  {
      final LocationManager manager = (LocationManager) context.getSystemService( Context.LOCATION_SERVICE );
          if (manager.isProviderEnabled( LocationManager.GPS_PROVIDER ) ) {

            }
         else
         {

         }
  }
}