forked from purdrew/incubator-cordova-js
/
battery.js
36 lines (33 loc) · 1.38 KB
/
battery.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
var cordova = require('cordova');
module.exports = {
start: function (args, win, fail) {
// Register one listener to each of the level and state change
// events using WebWorks API.
blackberry.system.event.deviceBatteryStateChange(function(state) {
var me = navigator.battery;
// state is either CHARGING or UNPLUGGED
if (state === 2 || state === 3) {
var info = {
"level" : me._level,
"isPlugged" : state === 2
};
if (me._isPlugged !== info.isPlugged && typeof win === 'function') {
win(info);
}
}
});
blackberry.system.event.deviceBatteryLevelChange(function(level) {
var me = navigator.battery;
if (level != me._level && typeof win === 'function') {
win({'level' : level, 'isPlugged' : me._isPlugged});
}
});
return { "status" : cordova.callbackStatus.NO_RESULT, "message" : "WebWorks Is On It" };
},
stop: function (args, win, fail) {
// Unregister battery listeners.
blackberry.system.event.deviceBatteryStateChange(null);
blackberry.system.event.deviceBatteryLevelChange(null);
return { "status" : cordova.callbackStatus.NO_RESULT, "message" : "WebWorks Is On It" };
}
};