2013-12-16 51 views
1

我想在我的应用程序中收听GPS状态变化,在android中是否有任何intent-action可用于广播接收器,如android.net.conn.CONNECTIVITY_CHANGE用于网络状态?gps开/关状态变化事件

回答

3

您可以注册BroadcastReceiver以收听意向操作PROVIDERS_CHANGED_ACTION。 或者你可以试试这个片断

GpsStatus.Listener gpsListener = new GpsStatus.Listener() { 
        public void onGpsStatusChanged(int event) { 
         if(event == GpsStatus.GPS_EVENT_FIRST_FIX){ 
          showMessageDialog("GPS fixed"); 
         } 
        } 
      }; 

OR

LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
lm.addGpsStatusListener(new android.location.GpsStatus.Listener() 
{ 
    public void onGpsStatusChanged(int event) 
    { 
     switch(event) 
     { 
     case GPS_EVENT_STARTED: 
      // do your tasks 
      break; 
     case GPS_EVENT_STOPPED: 
      // do your tasks 
      break; 
     } 
    } 
});