【发布时间】:2012-03-27 05:37:53
【问题描述】:
电量低于 40% 时是否可以关闭蓝牙?我正在开发一个应用程序,它会在电池电量低于 41% 时自动关闭蓝牙和 wifi。我可以在 Android 中以编程方式执行此操作吗?
【问题讨论】:
-
是的,它对我有用,谢谢 krish
电量低于 40% 时是否可以关闭蓝牙?我正在开发一个应用程序,它会在电池电量低于 41% 时自动关闭蓝牙和 wifi。我可以在 Android 中以编程方式执行此操作吗?
【问题讨论】:
您可以通过以下代码获取电池电量:
private void batteryLevel() {
BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
context.unregisterReceiver(this);
int rawlevel = intent.getIntExtra("level", -1);
int scale = intent.getIntExtra("scale", -1);
int level = -1;
if (rawlevel >= 0 && scale > 0) {
level = (rawlevel * 100) / scale;
}
batterLevel.setText("Battery Level Remaining: " + level + "%");
}
};
IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(batteryLevelReceiver, batteryLevelFilter);
}
然后使用以下代码使用此级别关闭蓝牙:
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (mBluetoothAdapter.isEnabled() && level < 40)
mBluetoothAdapter.disable();
}
您可以通过以下链接获取更多电池信息: http://mihaifonoage.blogspot.com/2010/02/getting-battery-level-in-android-using.html
【讨论】:
我不确定,但我认为你可以在你的应用程序中使用BroadcastListener,它主要用于在 android OS 级别发生任何事件时侦听短事件 android OS BroadCast 之后你可以执行该事件任何任务,例如,如果您想关闭蓝牙,您可以。
【讨论】:
请看这个link。它包含通过编程检查电池电量的代码。
你只需要修改代码为 40%就关掉蓝牙
【讨论】: