推广 热搜: page  音视频  使用  个数  搜索引擎  选择  企业  父亲  百度  可以 

AutoJs : 获取手机电池状态手机状态「AutoJs : 获取手机电池状态」

   日期:2025-02-18     作者:3ijyn    caijiyuan   评论:0    移动:http://ww.kub2b.com/mobile/news/21567.html
核心提示:importClass(android.content.Intent);importClass(android.content.IntentFilter);importClass(android.os.BatteryManager);let

importClass(android.content.Intent);

importClass(android.content.IntentFilter);

importClass(android.os.BatteryManager);

let BatteryN; //目前电量

let BatteryV; //电池电压

let BatteryT; //电池温度

let BatteryStatus; //电池状态

let BatteryTemp; //电池使用情况

let mBatInfoReceiver = new JavaAdapter(android.content.BroadcastReceiver, {

  onReceive: function (context, intent) {

    log(intent);

    let action = intent.getAction();

    

    if (Intent.ACTION_BATTERY_CHANGED.equals(action)) {

      BatteryN = intent.getIntExtra("level", 0); //目前电量

      BatteryV = intent.getIntExtra("voltage", 0); //电池电压

      BatteryT = intent.getIntExtra("temperature", 0); //电池温度

      switch (intent.getIntExtra("status", BatteryManager.BATTERY_STATUS_UNKNOWN)) {

        case BatteryManager.BATTERY_STATUS_CHARGING:

          BatteryStatus = "充电状态";

          break;

        case BatteryManager.BATTERY_STATUS_DISCHARGING:

          BatteryStatus = "放电状态";

          break;

        case BatteryManager.BATTERY_STATUS_NOT_CHARGING:

          BatteryStatus = "未充电";

          break;

        case BatteryManager.BATTERY_STATUS_FULL:

          BatteryStatus = "充满电";

          break;

        case BatteryManager.BATTERY_STATUS_UNKNOWN:

          BatteryStatus = "未知道状态";

          break;

      }

      switch (intent.getIntExtra("health", BatteryManager.BATTERY_HEALTH_UNKNOWN)) {

        case BatteryManager.BATTERY_HEALTH_UNKNOWN:

          BatteryTemp = "未知错误";

          break;

        case BatteryManager.BATTERY_HEALTH_GOOD:

          BatteryTemp = "状态良好";

          break;

        case BatteryManager.BATTERY_HEALTH_DEAD:

          BatteryTemp = "电池没有电";

          break;

        case BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE:

          BatteryTemp = "电池电压过高";

          break;

        case BatteryManager.BATTERY_HEALTH_OVERHEAT:

          BatteryTemp = "电池过热";

          break;

      }

      log(

        "目前电量为" +

          BatteryN +

          "% --- " +

          BatteryStatus +

          " " +

          "电压为" +

          BatteryV +

          "mV --- " +

          BatteryTemp +

          " " +

          "温度为" +

          BatteryT * 0.1 +

          "℃"

      );

    }

  },

});

// 注册一个系统 BroadcastReceiver,作为访问电池计量之用这个不能直接在AndroidManifest.xml中注册

let filter = new IntentFilter();

filter.addAction(Intent.ACTION_BATTERY_CHANGED);

context.registerReceiver(mBatInfoReceiver, filter);

events.on("exit", function () {

  unregisterReceiver();

});

function unregisterReceiver() {

  context.unregisterReceiver(mBatInfoReceiver);

  toastLog("关闭广播监听");

}

本文地址:http://ww.kub2b.com/news/21567.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号