做网站免费搭建,网站备案 注销,作文网站哪个平台好,网站建设中最重要的是什么本文实例讲述了Android4.4电池低电量告警提示原理与实现方法。分享给大家供大家参考#xff0c;具体如下#xff1a;之前版本的电池电量低是通过发送 intent ACTION_BATTERY_LOW来实现的#xff0c;而在android4.4中#xff0c;通过发送intent ACTION_BATTERY_CHANGED…本文实例讲述了Android4.4电池低电量告警提示原理与实现方法。分享给大家供大家参考具体如下之前版本的电池电量低是通过发送 intent ACTION_BATTERY_LOW来实现的而在android4.4中通过发送intent ACTION_BATTERY_CHANGED也就是电池电量只要变化就检查是否需要低电量告警并且实现挪到了PowerUI中。路径frameworks/base/packages/SystemUI/src/com/android/systemui/power/PowerUI.javapublic void start() {......//注册intent, 主要关注的是ACTION_BATTERY_CHANGED消息。// Register for Intent broadcasts for...IntentFilter filter new IntentFilter();filter.addAction(Intent.ACTION_BATTERY_CHANGED);filter.addAction(Intent.ACTION_SCREEN_OFF);filter.addAction(Intent.ACTION_SCREEN_ON);mContext.registerReceiver(mIntentReceiver, filter, null, mHandler);}当电池电量发生变化的时候BatteryService就会发送 ACTION_BATTERY_CHANGED的 intent.接着如下函数就会被调用private BroadcastReceiver mIntentReceiver new BroadcastReceiver() {Overridepublic void onReceive(Context context, Intent intent) {String action intent.getAction();if (action.equals(Intent.ACTION_BATTERY_CHANGED)) {......mBatteryStatus intent.getIntExtra(BatteryManager.EXTRA_STATUS,BatteryManager.BATTERY_STATUS_UNKNOWN);......if (!plugged (bucket oldBucket || oldPlugged) mBatteryStatus ! BatteryManager.BATTERY_STATUS_UNKNOWN bucket 0) {showLowBatteryWarning();......}}};如果不想要显示低电量对话框 只要不调用showLowBatteryWarning()即可。我遇到的问题在于插上充电座之后开机仍然显示低电量告警提示要插入充电器出现这个问题的原因在于 电池是另外一块板子供的所以没有插拔信息并且battery status默认情况下也是BATTERY_STATUS_UNKNOWN。因此只要将status改成BATTERY_STATUS_CHARGING就能修复此问题了希望本文所述对大家Android程序设计有所帮助。