永久检查android中的GPS状态

时间:2016-02-27 06:17:01

标签: android gps

我有一个Android应用程序,我想在我的应用程序中永久显示GPS状态,我之前使用计时器每3秒检查GPS状态,它工作正常,但我现在不想使用计时器。我只是想在GPS打开时,我的应用程序通知,并且当GPS终止时通知。

1 个答案:

答案 0 :(得分:3)

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

首先,在AndroidManifest.xml中定义一个广播接收器,位于应用程序标签之外。

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

然后,创建一个名为GPSBroadCastReceiver的类,用于处理位置提供程序更改的广播消息。

  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
         {

         }
  }
}

另外,您可以take a look at this question.