gpt4 book ai didi

android - ACTION_BATTERY_CHANGED 服务 Intent

转载 作者:太空宇宙 更新时间:2023-11-03 11:59:10 29 4
gpt4 key购买 nike

我正在使用此代码来跟踪我服务中的电池信息:

    Intent i = new ContextWrapper(applicationContext).registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
// now you can get the level and scale from this intent variable
int level = i.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = i.getIntExtra(BatteryManager.EXTRA_SCALE, -1);

float battPct = level/(float)scale;

1.我想知道是否会自动更换电池?或者我是否需要定期自己触发该 Intent ?2. 另外我想知道是否有一种方法可以计算从剩余电量的 1% 开始使用了多少时间。

最佳答案

Better way to get change value you should use BroadcastReceiver.

当电池更换时获取改变的值。您需要使用 BroadCastReceiver

IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(batteryLevelReceiver, batteryLevelFilter);

BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent){
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
float battPct = level/(float)scale;
}
};

关于android - ACTION_BATTERY_CHANGED 服务 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15313758/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com