Как получить значение 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
   );

}

  1. Убедитесь, что переменная mDevice, полученная из BlueetoothAdapter, не равна нулю.
  2. Наконец, убедитесь, что разрешения установлены. Приведенный выше код предоставит вам необходимые привилегии для получения связанных устройств Bluetooth.
Другие вопросы по тегам