2.5 监控Android设备的电量
Pratik Rupwal
2.5.1 问题
你希望检测Android设备上的电量,以便在电量低于某个阈值时通知用户,从而避免意外状况的发生。
2.5.2 解决方案
广播接收器可以用来接收电池状态变化时发送的广播,从而确定电量并且向用户发出警告。
2.5.3 讨论
有时候,必须在Android设备的电量低于某个限度时警告用户。例2-4中的代码设置电量变化时发送的广播消息,并创建一个广播接收器,以接收警告用户电池放电到特定水平的广播消息。
例2-4:主活动
public class MainActivity extends Activity {
/**在活动第一次创建时调用 */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/**注册电量变化时发送的广播消息的接收器*/
this.registerReceiver(this.myBatteryReceiver,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
/**
*可以用Intent.ACTION_BATTERY_LOW替代Intent.ACTION_BATTERY_CHANGED,
*只在电量低的时候发送消息,而不是每当变化发生时都发送消息
*/
}
private BroadcastReceiver myBatteryReceiver =
new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent arg1) {
int bLevel = arg1.getIntExtra("level", 0);// the battery level in integer
Log.i("Level", ""+bLevel);
}
};
}