[
https://issues.apache.org/jira/browse/CB-4518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13798453#comment-13798453
]
Peter commented on CB-4518:
---
Definitely separate issues:
* CB-4516 - level assumed to be a _percentage_, but no guarantee. Should be
calculated according to Android docs.
* CB-4515 - Battery level threshold check logic is flawed
Battery level is not calculated correctly
---
Key: CB-4518
URL: https://issues.apache.org/jira/browse/CB-4518
Project: Apache Cordova
Issue Type: Bug
Components: Android
Affects Versions: 2.9.0
Reporter: Peter
Assignee: Joe Bowser
Priority: Minor
The meaning of the Battery level in Cordova is a charge *percentage*.
Ref
http://cordova.apache.org/docs/en/2.9.0/cordova_events_events.md.html#batterylow
But the Battery EXTRA_LEVEL is not a percentage. It's just a number in the
range 0 to EXTRA_SCALE
Ref
http://developer.android.com/reference/android/os/BatteryManager.html#EXTRA_LEVEL
So the battery level calculation should be something like:
{code}
int level = batteryIntent.getIntExtra(android.os.BatteryManager.EXTRA_LEVEL,
0);
int scale = batteryIntent.getIntExtra(android.os.BatteryManager.EXTRA_SCALE,
100);
int percent = 100 * level / scale;
obj.put(level, percent);
{code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)