文件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电池状态的监听

更多相关文章

  1. 【Android】性能优化:电量消耗统计
  2. Android电池电量状态源码
  3. Android 主动获取电量的方法
  4. android 获取系统电量
  5. Android 之 监控手机电量
  6. Android电池电量更新 - BatteryService(转)
  7. android获取手机电量
  8. Delphi XE5 android 获取电池电量

随机推荐

  1. 极光推送完整流程测试
  2. android中getSystemService详解
  3. Android 捕获Activity 返回
  4. android之Adapter
  5. Android SDK安装时碰到的问题之解决办法
  6. 【android】读取通讯录
  7. 关于ContentProvider的设置问题
  8. Android service 实现过程
  9. Android Gson类型转换错误解决 com.googl
  10. Android:控件ProgressBar进度条