android待機新增電量小部件,點選位置資訊圖示,模式切換需要改為四種
阿新 • • 發佈:2019-02-06
android版本為5.1
小部件功能的實現是在各自的應用程式裡面,
小部件新增的過程是在Launcher裡面
很明顯,電量小部件的實現是在Settings裡面
要寫一個widgets,必須用到AppWidgetProvider這個類
AppWidgetProvider它是一個BroadcastReceiver
去Settings裡面檢視。
找到類SettingsAppwidgetProvider.java
裡面有一些靜態內部類
其中LocationStateTracker就是管理位置資訊的
在方法requestStateChange裡面
如上,直接修改相應的位置即可switch (currentMode) { case Settings.Secure.LOCATION_MODE_HIGH_ACCURACY: mode = Settings.Secure.LOCATION_MODE_BATTERY_SAVING; break; case Settings.Secure.LOCATION_MODE_BATTERY_SAVING: //modify begin //mode = Settings.Secure.LOCATION_MODE_HIGH_ACCURACY; mode=Settings.Secure.LOCATION_MODE_SENSORS_ONLY; //modify end break; case Settings.Secure.LOCATION_MODE_SENSORS_ONLY: mode = Settings.Secure.LOCATION_MODE_OFF; break; case Settings.Secure.LOCATION_MODE_OFF: mode = Settings.Secure.LOCATION_MODE_HIGH_ACCURACY; break;