Android--監聽GPS開啓和關閉

關鍵代碼如下

?
1
2
3
4
5
getContentResolver()
            .registerContentObserver(
                    Settings.Secure
                            .getUriFor(Settings.System.LOCATION_PROVIDERS_ALLOWED),
                    false, mGpsMonitor);

完整的代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class MyActivity extends Activity {
 
    private final ContentObserver mGpsMonitor = new ContentObserver(null) {
        @Override
        public void onChange(boolean selfChange) {
            super.onChange(selfChange);
 
            boolean enabled = mLocationManager
                    .isProviderEnabled(LocationManager.GPS_PROVIDER);
            Log.i("gps : " + enabled);
        }
    };
 
    private LocationManager mLocationManager;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
    }
 
    protected void onStart() {
        getContentResolver()
                .registerContentObserver(
                        Settings.Secure
                                .getUriFor(Settings.Secure.LOCATION_PROVIDERS_ALLOWED),
                        false, mGpsMonitor);
    };
 
    @Override
    protected void onStop() {
        super.onStop();
        getContentResolver().unregisterContentObserver(mGpsMonitor);
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章