Как получить значение rssi подключенного устройства Bluetooth
Я пытаюсь получить значение rssi подключенного устройства Bluetooth в своей программе для Android. Ниже приведен код:
gatt = mDevice.connectGatt(getApplicationContext(), false, new BluetoothGattCallback() {
@Override
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
super.onReadRemoteRssi(gatt, rssi, status);
Log.d(TAG, "rssi is : " + rssi);
((TextView) findViewById(R.id.rssiValue)).setText(rssi);
}
});
gatt.readRemoteRssi();
Но метод onReadRemoteRssi не возвращает никакого значения. Пожалуйста, помогите мне с проблемой.
1 ответ
if(ContextCompat.checkSelfPermission(RSSI.this,Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(
RSSI.this,
new String[] {
Manifest.permission.BLUETOOTH,
Manifest.permission.BLUETOOTH_ADMIN,
Manifest.permission.ACCESS_FINE_LOCATION
},
1
);
}
- Убедитесь, что переменная mDevice, полученная из BlueetoothAdapter, не равна нулю.
- Наконец, убедитесь, что разрешения установлены. Приведенный выше код предоставит вам необходимые привилегии для получения связанных устройств Bluetooth.