提交 1a3a7272 编写于 作者: 杜庆泉's avatar 杜庆泉

android 补充同步获取电量的示例

上级 d7fd15b4
...@@ -5,13 +5,6 @@ ...@@ -5,13 +5,6 @@
"style": { "style": {
"navigationBarTitleText": "uni-app" "navigationBarTitleText": "uni-app"
} }
},
{
"path": "pages/autotest/uni-getbatteryinfo/uni-getbatteryinfo",
"style": {
"navigationBarTitleText": "uni-getbatteryinfo",
"enablePullDownRefresh": false
}
} }
], ],
"globalStyle": { "globalStyle": {
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
<button @tap="testSetUserCaptureScreen">{{setUserCaptureScreenText}}</button> <button @tap="testSetUserCaptureScreen">{{setUserCaptureScreenText}}</button>
<button @tap="testGetBatteryInfo">获取电池电量</button> <button @tap="testGetBatteryInfo">获取电池电量</button>
<button @tap="testGetBatteryInfoSync">同步获取电池电量</button>
<button @tap="testonMemoryWarning">开启内存不足告警监听</button> <button @tap="testonMemoryWarning">开启内存不足告警监听</button>
<button @tap="testoffMemoryWarning">关闭内存不足告警监听</button> <button @tap="testoffMemoryWarning">关闭内存不足告警监听</button>
...@@ -222,6 +223,12 @@ ...@@ -222,6 +223,12 @@
} }
}) })
}, },
testGetBatteryInfoSync() {
let ret = uni.getBatteryInfoSync()
console.log(ret)
},
testSetUserCaptureScreen() { testSetUserCaptureScreen() {
let flag = this.setUserCaptureScreenFlag; let flag = this.setUserCaptureScreenFlag;
uni.setUserCaptureScreen({ uni.setUserCaptureScreen({
......
...@@ -2,8 +2,11 @@ import Context from "android.content.Context"; ...@@ -2,8 +2,11 @@ import Context from "android.content.Context";
import BatteryManager from "android.os.BatteryManager"; import BatteryManager from "android.os.BatteryManager";
import { UTSAndroid } from "io.dcloud.uts"; import { UTSAndroid } from "io.dcloud.uts";
import { GetBatteryInfo, GetBatteryInfoSuccess, GetBatteryInfoFail, GetBatteryInfoOptions } from '../interface.uts' import { GetBatteryInfo, GetBatteryInfoSuccess, GetBatteryInfoFail, GetBatteryInfoResult,GetBatteryInfoSync } from '../interface.uts'
/**
* 异步获取电量
* @param {Object} options
*/
export const getBatteryInfo : GetBatteryInfo = function (options) { export const getBatteryInfo : GetBatteryInfo = function (options) {
const context = UTSAndroid.getAppContext(); const context = UTSAndroid.getAppContext();
if (context != null) { if (context != null) {
...@@ -31,3 +34,36 @@ export const getBatteryInfo : GetBatteryInfo = function (options) { ...@@ -31,3 +34,36 @@ export const getBatteryInfo : GetBatteryInfo = function (options) {
options.complete?.(res) options.complete?.(res)
} }
} }
/**
* 同步获取电量示例
*/
export const getBatteryInfoSync : GetBatteryInfoSync = function (): GetBatteryInfoResult {
const context = UTSAndroid.getAppContext();
if (context != null) {
const manager = context.getSystemService(
Context.BATTERY_SERVICE
) as BatteryManager;
const level = manager.getIntProperty(
BatteryManager.BATTERY_PROPERTY_CAPACITY
);
const res : GetBatteryInfoResult = {
level: level,
isCharging: manager.isCharging()
};
return res;
} else {
/**
* 无有效上下文
*/
const res : GetBatteryInfoResult = {
level: -1,
isCharging: false
};
return res;
}
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册