在Android P版本,状态栏上的蓝牙图标只有在连接蓝牙耳机或者蓝牙网络时才会显示,目前客户要求,只要打开蓝牙功能就必须显示蓝牙图标
修改如下:
文件路径(MTK平台)
/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarPolicy.java
private final void updateBluetooth() {
int iconId = R.drawable.stat_sys_data_bluetooth;
String contentDescription =
mContext.getString(R.string.accessibility_quick_settings_bluetooth_on);
boolean bluetoothVisible = false;
if (mBluetooth != null) {
//wei modify for bluetooth start
if(mBluetooth.isBluetoothEnabled()) {
bluetoothVisible = mBluetooth.isBluetoothEnabled();
if (mBluetooth.isBluetoothConnected()) {
iconId = R.drawable.stat_sys_data_bluetooth;
contentDescription = mContext.getString(R.string.accessibility_bluetooth_connected);
bluetoothVisible = mBluetooth.isBluetoothEnabled();
}
}
//wei modify for bluetooth start
}
mIconController.setIcon(mSlotBluetooth, iconId, contentDescription);
mIconController.setIconVisibility(mSlotBluetooth, bluetoothVisible);
}
主要是在蓝牙打开状态将bluetoothVisible = mBluetooth.isBluetoothEnabled();重新赋值一下即可