[DESCRIPTION]
在电池低电量时,打开camera,如果闪光灯在工作的话,容易造成电池进入保护状态,无法开机。如想在电池低电压时,关闭Camera的闪光功能,请参考如下方法进行修改:
[SOLUTION]
在alps\packages\apps\Camera\src\com\android\camera\Camera.java中做如下修改:
1. 接受Battery的intent, 例如
registerForBroadcasts()
{
IntentFilter intentfilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
mContext.registerReceiver(mReceiver, intentFilter);
}
registerForBroadcasts()
{
IntentFilter intentfilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
mContext.registerReceiver(mReceiver, intentFilter);
}
2. 接受Battery的电压值
private final BroadcastReceiver mReceiver = new BroadReceiver()
{
@override
public void onReceive(Contect contect, Intent intent)
{
String action = intent.getAction();
if(action.equals(Intent.ACTION_BATTERY_CHANGED))
{
int vBat = intent.getIntExtra("voltage", 0);
//这里就获取到电池的电压值, 单位是mV
//可以利用这个电池电压进行判断来决定是否Camera这边需要关闭闪光灯
mParameters.setFlashMode(Parameters.FLASH_MODE_OFF);
applyParametersToServer();
}
}
}