angular - Ionic 4:BatteryStatus 不会改变
问题描述
我正在尝试在我的应用程序中获取设备的电池状态。
安装后
cordova-plugin-battery-status
@ionic-native/battery-status
@ionic-native/core
我放入BatteryStatus
了模块提供程序。
在组件中,我有:
batterySubscription: Subscription;
batteryLevel: number = 100;
isBatteryPlugged: boolean = false;
constructor(private batteryStatus: BatteryStatus) { }
ngOnInit() {
this.initSubscriptions();
}
initSubscriptions() {
this.batterySubscription = this.batteryStatus.onChange().subscribe( (status:
BatteryStatusResponse) => {
console.log(status.level, status.isPlugged);
this.batteryLevel = status.level;
this.isBatteryPlugged = status.isPlugged;
});
}
一切都编译得很完美,但电池信息永远不会改变(浏览器和应用程序一样)。当我插入计算机或电池电量发生变化时,它都不会检测到。
有人知道这个问题吗?谢谢 !
解决方案
该代码对我来说看起来不错,但是该插件太旧了,以至于它可能无法在较新的操作系统上按预期工作。您可以尝试打开一个问题:https ://github.com/apache/cordova-plugin-battery-status/issues
如果我是你,我会尝试使用电容器:https ://capacitorjs.com/docs/apis/device#getbatteryinfo
推荐阅读
- android - 如何在android中修复“无法解析rxkotlin”
- python - 将带有列名的数据框单独附加到另一个带有数据的数据框
- reactjs - 在 redux 操作中调用作为参数传递的组件方法是错误的吗?
- android - 未在膨胀视图的 TextView 中设置文本
- java - 使用 Tosca 执行 Selenium 脚本
- ruby - 如何使用 case 语句循环遍历对象数组并向数组内的键添加值?
- apache-spark - Spark Join 数据框并有条件地更新列
- javascript - 链接承诺但具有不同的参数
- python - leetcode Python 编码问题的 TypeError
- python - 如何 Python 网络爬取(无标签、无 div 名称、无类名)