Я наконец решил таким образом:
Я не использую ScannerCompact
, но BluetoothGATT
:
, когда я связываю nordi c к ThingyLibSdkManager
я также связываю его с GATT
:
ThingyListenerHelper.registerThingyListener(getApplicationContext(), mThingyListener, device);
mBluetoothGatt = device.connectGatt(getApplicationContext(), true, gattCallback);
с этим, внутри mThingylistener
теперь я могу запросить rssi
:
@Override
public void onGyroscopeValueChangedEvent(BluetoothDevice bluetoothDevice, float x, float y, float z) {
collectedData.put("onGyroscopeValueChangedEvent_x", x + "");
collectedData.put("onGyroscopeValueChangedEvent_y", y + "");
collectedData.put("onGyroscopeValueChangedEvent_z", z + "");
// request rssi from gatt
// mBluetoothGatt.readRemoteRssi();
}
теперь, в асинхронном режиме c, вы получите обратный вызов внутри mBluetoothGatt
:
@Override
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
// do some stuff
}