我把mBluetoothGatt.readRemoteRssi();進入mGattCallback。爲什麼onReadRemoteRssi()回調的值是0?
private final BluetoothGattCallback mGattCallback = new BluetoothGattCallback() {
@Override
public void onConnectionStateChange(BluetoothGatt gatt, int status,
int newState) {
// TODO Auto-generated method stub
String intentAction;
if(newState == BluetoothProfile.STATE_CONNECTED) {
intentAction = ACTION_GATT_CONNECTED;
mConnectionState = STATE_CONNECTED;
mBluetoothGatt.readRemoteRssi();
.
.
.
而且也把onReadRemoteRssi在BluetoothGattCallback功能
.
.
.
public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {
broadcastUpdate(ACTION_DATA_AVAILABLE, characteristic);
}
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
final Intent rssiIntent = new Intent(BluetoothLeService.this, DeviceControl.class);
rssiIntent.putExtra(DeviceControl.RSSI, rssi);
}
};//BluetoothGattCallback End
它會調用readRemoteRssi()和onReadRemoteRssi(),但我不知道爲什麼RSSI爲0。 ..
日誌的樣子:
D/BluetoothGatt(3684): readRssi() - device: 90:59:AF:0B:8A:AB
D/BtGatt.GattService(2463): readRemoteRssi() - address=90:59:AF:0B:8A:AB
.
.
.
D/BtGatt.GattService(2463): onReadRemoteRssi() - clientIf=4 address=90:59:AF:0B:8A:AB, rssi=0, status=0
D/BluetoothGatt(3684): onReadRemoteRssi() - Device=90:59:AF:0B:8A:AB rssi=0 status=0
我確定我的BLE設備是正常的。 但我不知道爲什麼rssi值是?
有人可以教我嗎?
謝謝!