国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android編程實現(xiàn)對電池狀態(tài)的監(jiān)視功能示例

2019-12-12 04:51:23
字體:
供稿:網(wǎng)友

本文實例講述了Android編程實現(xiàn)對電池狀態(tài)的監(jiān)視功能。分享給大家供大家參考,具體如下:

最近在開發(fā)一個與GPS相關(guān)的項目,因為其中涉及到了GPS的使用,眾所周知,GPS是相當耗電的,因此就想著怎么能知道當前的電量,并且在電量達到一個下限的時候,及時提醒給用戶,以根據(jù)情況關(guān)閉GPS,節(jié)省電量,以備電話急用,后來查資料,看API,終于找到了方法,怎么來監(jiān)視電量,根據(jù)電量的變化來獲取當前的電量多少,并且根據(jù)其它狀態(tài)綜合對手機進行管理,以達到管理最優(yōu)的狀態(tài)。

下面是代碼:

private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver() {    int intLevel = 0;    int intScale = 0;    public void onReceive(Context context, Intent intent) {      String action = intent.getAction();      /*       * 如果捕捉到的action是ACTION_BATTERY_CHANGED, 就運行onBatteryInfoReceiver()       */      if (Intent.ACTION_BATTERY_CHANGED.equals(action)) {        intLevel = intent.getIntExtra("level", 0);        intScale = intent.getIntExtra("scale", 100);        // 電池伏數(shù)        Log.d("Battery V", "" + intent.getIntExtra("voltage", 0));        // 電池溫度        Log.d("Battery T", "" + intent.getIntExtra("temperature", 0));        BatteryV = "當前電壓為:" + intent.getIntExtra("voltage", 0);        BatteryT = "當前溫度為:" + intent.getIntExtra("temperature", 0);        switch (intent.getIntExtra("status",            BatteryManager.BATTERY_STATUS_UNKNOWN)) {        case BatteryManager.BATTERY_STATUS_CHARGING:          BatteryStatus = "充電狀態(tài)";          break;        case BatteryManager.BATTERY_STATUS_DISCHARGING:          BatteryStatus = "放電狀態(tài)";          break;        case BatteryManager.BATTERY_STATUS_NOT_CHARGING:          BatteryStatus = "未充電";          break;        case BatteryManager.BATTERY_STATUS_FULL:          BatteryStatus = "充滿電";          break;        case BatteryManager.BATTERY_STATUS_UNKNOWN:          BatteryStatus = "未知道狀態(tài)";          break;        }        switch (intent.getIntExtra("plugged",            BatteryManager.BATTERY_PLUGGED_AC)) {        case BatteryManager.BATTERY_PLUGGED_AC:          BatteryStatus2 = "AC充電";          break;        case BatteryManager.BATTERY_PLUGGED_USB:          BatteryStatus2 = "USB充電";          break;        }        switch (intent.getIntExtra("health",            BatteryManager.BATTERY_HEALTH_UNKNOWN)) {        case BatteryManager.BATTERY_HEALTH_UNKNOWN:          BatteryTemp = "未知錯誤";          break;        case BatteryManager.BATTERY_HEALTH_GOOD:          BatteryTemp = "狀態(tài)良好";          break;        case BatteryManager.BATTERY_HEALTH_DEAD:          BatteryTemp = "電池沒有電";          break;        case BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE:          BatteryTemp = "電池電壓過高";          break;        case BatteryManager.BATTERY_HEALTH_OVERHEAT:          BatteryTemp = "電池過熱";          break;        }      }    }};

這些信息就是監(jiān)聽廣播,根據(jù)廣播的信息進行判斷,如果是電量變化的廣播,那么就根據(jù)這些信息,更新數(shù)據(jù),從而進行分析!

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android數(shù)據(jù)庫操作技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android開發(fā)入門與進階教程》、《Android資源操作技巧匯總》、《Android視圖View技巧總結(jié)》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 上虞市| 华阴市| 岳西县| 岑溪市| 大宁县| 德安县| 江山市| 凤庆县| 孙吴县| 平泉县| 娱乐| 西峡县| 林西县| 安岳县| 四平市| 重庆市| 通化市| 阳信县| 建始县| 赤峰市| 韩城市| 临湘市| 察雅县| 金阳县| 邵武市| 鄂伦春自治旗| 玉溪市| 崇州市| 商丘市| 镇坪县| 岳池县| 建瓯市| 金阳县| 叶城县| 瑞昌市| 隆回县| 白山市| 达孜县| 吉首市| 绥棱县| 马山县|