|
|
|
@ -23,9 +23,15 @@ object BatteryHelper {
|
|
|
|
|
val action = intent?.action
|
|
|
|
|
if (Intent.ACTION_BATTERY_CHANGED == action) {
|
|
|
|
|
val level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1)!!
|
|
|
|
|
val status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
|
|
|
|
|
val isCharging =
|
|
|
|
|
(status == BatteryManager.BATTERY_STATUS_CHARGING || status == BatteryManager.BATTERY_STATUS_FULL)
|
|
|
|
|
notifyUser(level)
|
|
|
|
|
mLevel = level
|
|
|
|
|
Log.i(this@BatteryHelper.javaClass.name, "onReceive level = $level")
|
|
|
|
|
Log.i(
|
|
|
|
|
this@BatteryHelper.javaClass.name,
|
|
|
|
|
"onReceive level = $level isCharging = $isCharging"
|
|
|
|
|
)
|
|
|
|
|
callbacks.forEach {
|
|
|
|
|
it.onLevel(level, batteryManager?.isCharging == true)
|
|
|
|
|
}
|
|
|
|
@ -38,15 +44,15 @@ object BatteryHelper {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private fun notifyUser(level: Int) {
|
|
|
|
|
val tip = if (level < 10) {
|
|
|
|
|
if (mLevel >= 10 || mLevel == -1) {
|
|
|
|
|
"电池电量低于10%"
|
|
|
|
|
val tip = if (level <= 10) {
|
|
|
|
|
if (mLevel > 10 || mLevel == -1) {
|
|
|
|
|
"电池电量不足,请及时充电!"
|
|
|
|
|
} else {
|
|
|
|
|
""
|
|
|
|
|
}
|
|
|
|
|
} else if (level < 20) {
|
|
|
|
|
if (mLevel >= 20 || mLevel == -1) {
|
|
|
|
|
"电池电量低与20%"
|
|
|
|
|
} else if (level <= 20) {
|
|
|
|
|
if (mLevel > 20 || mLevel == -1) {
|
|
|
|
|
"电池电量低,请注意充电!"
|
|
|
|
|
} else {
|
|
|
|
|
""
|
|
|
|
|
}
|
|
|
|
|