Sistemin pil düzeyini görüntüleyecek krom tarayıcısı için bir uzantı oluşturmaya çalışıyorum (ve başka şeyleri ikiye katlayın) BatteryStatusAPI. Sadece deniyorum Basit tuval kullanarak pil seviyesini gösterir, ancak işe yaramaz.Chrome eklentileri için BatteryStatus API çalışmıyor
tezahür:
{
"manifest_version": 2,
"name": "Battery",
"description": "This extension shows the battery stats of the current device.",
"version": "1.0",
"browser_action": {
"default_icon": "battery_full.png",
"default_title": "Click Here!"
},
"background": {
"scripts": ["icon_changer.js"]
}
}
JavaScript:
var battery;
navigator.getBattery()
.then(function (b) {
battery = b;
}
);
function drawIcon() {
var clockCanvas = document.createElement("canvas");
clockCanvas.height = 19;
clockCanvas.width = 19;
var clockContext = clockCanvas.getContext("2d");
clockContext.textAlign = "center";
clockContext.textBaseline = "middle";
clockContext.font = "9px Arial";
clockContext.fillText(battery.level, 9, 10);
chrome.browserAction.setIcon({
imageData: clockContext.getImageData(0, 0, 19, 19)
});
}
drawIcon();
Sorunun ne düşünüyorsunuz?
Geri arama işlevinin içindeki b değeri nedir? 'Console.log (b);' orada ekleyin. Ve oku https://stackoverflow.com/questions/23667086/why-is-my-variable-unaltered-after-i-modify-it-inside-of-a-function-asynchron – rsanchez
'Dikkat Çekilmemiş ReferenceError: b tanımlı değil '. Eşzamansız akış hakkında okuduktan sonra, hala "getBattery()" in neden asenkron kodun geri kalanı gibi çalıştırılmadığını anlamıyorum. – galah92
Hayır, '' işlevi (b) {...} 'içinde demek istiyorum. – rsanchez