首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ionic 4中的电池状态有问题

Ionic 4中的电池状态有问题
EN

Stack Overflow用户
提问于 2019-05-07 21:45:53
回答 3查看 249关注 0票数 1

我正在使用Ionic4,并且正在尝试获取设备的电池电量。但是我得到一个错误: ERROR TypeError: Invalid event target,对于电池电量,我得不到定义。

有没有人遇到过同样的问题

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-08-22 20:44:37

这就是我在Ionic 4中获取电池状态的方法:

window.addEventListener('batterystatus', this.onBatteryStatus, false);

onBatteryStatus(status) {
console.log('Level: ' + status.level + ' isPlugged: ' + status.isPlugged);
}
票数 1
EN

Stack Overflow用户

发布于 2019-06-05 03:30:48

ionic上有一个开放的bug报告:https://github.com/ionic-team/ionic-native/issues/2972

不幸的是,目前还没有解决方案,但是有一个解决方案可以绕过离子类型脚本包装器,直接侦听窗口事件。

fromEvent(window, 'batterystatus').subscribe((status) => {
    console.log(status)
});
票数 1
EN

Stack Overflow用户

发布于 2020-03-04 21:03:41

一种简单的方法可能是这样的:

$ ionic cordova plugin add cordova-plugin-battery-status
$ npm install --save @ionic-native/battery-status@4

然后在你的代码中:

import { Platform } from 'ionic-angular';
import { BatteryStatus } from '@ionic-native/battery-status';

batterylevel = 0;


constructor(...
           private batteryStatus: BatteryStatus,
           private plt: Platform ) {}

ionViewDidEnter() 
{     
  // Cordova check
  if(this.plt.is('core') || this.plt.is('mobileweb')) 
  {
   // NO. It's a browser.
   // don't call the batery.   
  }
  else
  { 

    const batterysubscription = this.batteryStatus.onChange().subscribe(status => {  
  this.batterylevel = status.level;
     });
   } 

}

yourfunction()
{
  console.log(this.batterylevel);
}

您还需要将其添加到您的提供者列表中。

当然,这只能在仿真或设备中工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56024082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档