电池电量低于 40% 时是不是可以关闭蓝牙?

Posted

技术标签:

【中文标题】电池电量低于 40% 时是不是可以关闭蓝牙?【英文标题】:Is it possible to turn off bluetooth when the battery level is below 40%?电池电量低于 40% 时是否可以关闭蓝牙? 【发布时间】:2012-03-27 05:37:53 【问题描述】:

电量低于 40% 时是否可以关闭蓝牙?我正在开发一个应用程序,它会在电池电量低于 41% 时自动关闭蓝牙和 wifi。我可以在 android 中以编程方式执行此操作吗?

【问题讨论】:

是的,它对我有用,谢谢 krish 【参考方案1】:

您可以通过以下代码获取电池电量:

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

【讨论】:

【参考方案2】:

我不确定,但我认为你可以在你的应用程序中使用BroadcastListener,它主要用于在 android OS 级别发生任何事件时侦听短事件 android OS BroadCast 之后你可以执行该事件任何任务,例如,如果您想关闭蓝牙,您可以。

【讨论】:

【参考方案3】:

请看这个link。它包含通过编程检查电池电量的代码。

你只需要修改代码为 40%就关掉蓝牙

【讨论】:

以上是关于电池电量低于 40% 时是不是可以关闭蓝牙?的主要内容,如果未能解决你的问题,请参考以下文章

如何在独立的智能手表应用程序或表盘中检查蓝牙连接手机的电池电量? [关闭]

如何查看蓝牙耳机的剩余电池电量

在 Linux 上检查连接的蓝牙设备的电池电量

电池电量状态 (0x2A1B) 蓝牙规范是啥意思?

苹果电量低于20%的提示音怎么关闭

手机怎样显示蓝牙耳机的电量