Android电池状态监听实例1(下)
16lz
2022-03-29
文件4:BatteryInfo.java package com.teleca.robin; import android.content.Intent; import android.os.BatteryManager; public classBatteryInfo{ int health; int batteryIconId; int plugged; boolean batteryPresent; int status; String technology; int temperature; int voltage; int level; int scale; publicBatteryInfo( Intent intent ) { String action = intent.getAction(); if (!Intent. ACTION_BATTERY_CHANGED .equals(action)) return; health=intent.getIntExtra( BatteryManager.EXTRA_HEALTH ,BatteryManager.BATTERY_HEALTH_UNKNOWN); batteryIconId=intent.getIntExtra( BatteryManager.EXTRA_ICON_SMALL ,-1); plugged=intent.getIntExtra( BatteryManager.EXTRA_PLUGGED , -1); batteryPresent=intent.getBooleanExtra( BatteryManager.EXTRA_PRESENT , false); status=intent.getIntExtra( BatteryManager.EXTRA_STATUS , BatteryManager.BATTERY_STATUS_UNKNOWN); technology=intent.getStringExtra( BatteryManager.EXTRA_TECHNOLOGY ); temperature=intent.getIntExtra( BatteryManager.EXTRA_TEMPERATURE , -1); voltage=intent.getIntExtra( BatteryManager.EXTRA_VOLTAGE , -1); level = intent.getIntExtra( BatteryManager.EXTRA_LEVEL , 0); scale = intent.getIntExtra( BatteryManager.EXTRA_SCALE , 100); } public String toString() { StringBuffer strBuffer=new StringBuffer(50); strBuffer.append("information for battery\n"); strBuffer.append("health :"); switch( health ) { case BatteryManager.BATTERY_HEALTH_DEAD : strBuffer.append("BATTERY_HEALTH_DEAD"); break; case BatteryManager.BATTERY_HEALTH_GOOD : strBuffer.append("BATTERY_HEALTH_GOOD"); break; case BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE : strBuffer.append("BATTERY_HEALTH_OVER_VOLTAGE"); break; case BatteryManager.BATTERY_HEALTH_UNKNOWN : strBuffer.append("BATTERY_HEALTH_UNKNOWN"); break; case BatteryManager.BATTERY_HEALTH_UNSPECIFIED_FAILURE : strBuffer.append("BATTERY_HEALTH_UNSPECIFIED_FAILURE"); break; default: strBuffer.append("BATTERY_HEALTH_UNKNOWN"); break; } strBuffer.append("\n"); strBuffer.append("iconId:"+ batteryIconId ); strBuffer.append("\n"); strBuffer.append("Power source:"); switch( plugged ) { case 0 : strBuffer.append(" batter "); break; case BatteryManager.BATTERY_PLUGGED_AC : strBuffer.append("AC charger"); break; case BatteryManager.BATTERY_PLUGGED_USB : strBuffer.append("USB charger"); break; default: strBuffer.append("unkonow charger"); break; } strBuffer.append("\n"); strBuffer.append("present:"+ batteryPresent ); strBuffer.append("\n"); strBuffer.append("status: "); switch( status ) { case BatteryManager.BATTERY_STATUS_CHARGING : strBuffer.append("charging"); break; case BatteryManager.BATTERY_STATUS_DISCHARGING : strBuffer.append("discharging"); break; case BatteryManager.BATTERY_STATUS_FULL : strBuffer.append("full"); break; case BatteryManager.BATTERY_STATUS_NOT_CHARGING: strBuffer.append("not charing"); break; } strBuffer.append("\n"); strBuffer.append(" technology :"+ technology ); strBuffer.append("\n"); strBuffer.append(" 温度: "+ temperature +"\n"); strBuffer.append(" 电压: "+ voltage +"\n"); strBuffer.append(" 剩余电量: " + String.valueOf( level * 100 / scale ) + "%"); return strBuffer.toString(); }
} 注意:更多内容请参考《 Android电池状态的监听》
} 注意:更多内容请参考《 Android电池状态的监听》
更多相关文章
- android 监听短信和来电
- android修改软键盘的回车键为搜索键以及点击时执行两次监听事件
- Android(安卓)修改系统屏幕亮度及监听
- Android.GridView事件监听
- Android中Home键的监听和拦截
- Android使用http协议与服务器通信
- Android小心有坑之网络状态监听
- Android开发之接收系统广播消息
- Android(安卓)监听Home键按键事件