W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
基礎庫 3.30.2 開始支持,低版本需做兼容處理。
解釋: 獲取當前設備電量同步接口,ios 系統(tǒng)不可用。Web 態(tài)說明:受瀏覽器限制,Web 態(tài)不支持同步獲取當前設備電量,調用該方法會拋出一個標準的Error對象。
無
參數(shù)名 | 類型 | 說明 |
---|---|---|
level | String | 設備電量,范圍為 1-100 。 |
isCharging | Boolean | 設備是否正在充電 |
<view class="wrap">
<view class="card-area">
<view class="list-area border-bottom" s-for="item in infoList">
<text class="list-item-key-4">{{item.chineseName}}</text>
<text class="list-item-value">{{item.value}}</text>
</view>
<view class="button-group">
<button bind:tap="getBatteryInfo" type="primary" hover-stop-propagation="true">獲取電量信息</button>
</view>
</view>
</view>
Page({
data: {
infoList: [{
engName: 'level',
chineseName: '電量',
value: ''
}, {
engName: 'isCharging',
chineseName: '是否充電中',
value: ''
}]
},
getBatteryInfo() {
swan.getBatteryInfo({
success: res => {
console.log('getBatteryInfo success', res);
this.updateInfoList(res);
},
fail: err => {
console.log('getBatteryInfo fail', err);
}
});
},
// 同步寫法
// getBatteryInfoSync() {
// let res = swan.getBatteryInfoSync();
// // 基礎庫 3.140.1 之前,無法判斷接口是否調用失敗
// // 基礎庫 3.140.1 及以后,通過 instanceof 來判斷接口是否調用失敗
// if (!(res instanceof Error)) {
// console.log('當前設備電量值:', res.level);
// console.log('當前設備是否正在充電:', res.isCharging);
// this.updateInfoList(res);
// }
// else {
// console.log('getBatteryInfoSync fail', res.errMsg || res.message);
// }
// },
updateInfoList(res) {
let infoList = this.data.infoList;
infoList[0].value = res.level + '%';
if (res.isCharging === true) {
infoList[1].value = '是';
}
else {
infoList[1].value = '否';
}
this.setData('infoList', infoList);
for (let item of infoList) {
if (!res[item.engName]) {
item.value = '暫無';
}
}
}
});
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: