android: parse optimized charging status

thanks @d4rken
This commit is contained in:
Kavish Devar
2026-04-03 20:27:28 +05:30
parent a24a8986e1
commit 8469ce4984
2 changed files with 5 additions and 3 deletions

View File

@@ -122,9 +122,9 @@ fun BatteryView(service: AirPodsService, preview: Boolean = false) {
val leftLevel = left?.level ?: 0 val leftLevel = left?.level ?: 0
val rightLevel = right?.level ?: 0 val rightLevel = right?.level ?: 0
val caseLevel = case?.level ?: 0 val caseLevel = case?.level ?: 0
val leftCharging = left?.status == BatteryStatus.CHARGING val leftCharging = left?.status == BatteryStatus.CHARGING || left?.status == BatteryStatus.OPTIMIZED_CHARGING
val rightCharging = right?.status == BatteryStatus.CHARGING val rightCharging = right?.status == BatteryStatus.CHARGING || right?.status == BatteryStatus.OPTIMIZED_CHARGING
val caseCharging = case?.status == BatteryStatus.CHARGING val caseCharging = case?.status == BatteryStatus.CHARGING || case?.status == BatteryStatus.OPTIMIZED_CHARGING
val prevLeft = previousBatteryStatus.value.find { it.component == BatteryComponent.LEFT } val prevLeft = previousBatteryStatus.value.find { it.component == BatteryComponent.LEFT }
val prevRight = previousBatteryStatus.value.find { it.component == BatteryComponent.RIGHT } val prevRight = previousBatteryStatus.value.find { it.component == BatteryComponent.RIGHT }

View File

@@ -40,6 +40,7 @@ object BatteryStatus {
const val CHARGING = 1 const val CHARGING = 1
const val NOT_CHARGING = 2 const val NOT_CHARGING = 2
const val DISCONNECTED = 4 const val DISCONNECTED = 4
const val OPTIMIZED_CHARGING = 5
} }
@Parcelize @Parcelize
@@ -58,6 +59,7 @@ data class Battery(val component: Int, val level: Int, val status: Int) : Parcel
BatteryStatus.CHARGING -> "CHARGING" BatteryStatus.CHARGING -> "CHARGING"
BatteryStatus.NOT_CHARGING -> "NOT_CHARGING" BatteryStatus.NOT_CHARGING -> "NOT_CHARGING"
BatteryStatus.DISCONNECTED -> "DISCONNECTED" BatteryStatus.DISCONNECTED -> "DISCONNECTED"
BatteryStatus.OPTIMIZED_CHARGING -> "OPTIMIZED_CHARGING"
else -> null else -> null
} }
} }