国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 黄山市| 台南县| 望奎县| 会东县| 涡阳县| 泽普县| 徐闻县| 万年县| 长顺县| 尼勒克县| 永宁县| 镇江市| 舒兰市| 江陵县| 信宜市| 白河县| 沁源县| 大石桥市| 宜阳县| 安龙县| 灵石县| 任丘市| 鹿泉市| 贡觉县| 长垣县| 郑州市| 安庆市| 永仁县| 沂水县| 额济纳旗| 台中市| 廊坊市| 诏安县| 黑山县| 丰顺县| 汕尾市| 会昌县| 孙吴县| 乌兰浩特市| 延庆县| 色达县|