3

BT-LE ビーコンへの相対的な近接性を検出するために、Android API レベル 18+ で BT4-LE 信号強度を継続的に読み取る方法を提案できる人はいますか? スキャン中に LE 無線信号強度が返されることは知っていますが (参照: http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.LeScanCallback.html )、スキャンが完了して接続が確立されると、とにかくそこに存在します。再スキャンせずに更新された BT-LE 信号強度を取得するには?

4

3 に答える 3

9

http://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#readRemoteRssi()

信号強度の読み取りを開始するための非同期呼び出し。

http://developer.android.com/reference/android/bluetooth/BluetoothGattCallback.html#onReadRemoteRssi(android.bluetooth.BluetoothGatt,%20int,%20int)

読み込み終了後のコールバック。

読む前に接続する必要があります。

于 2013-09-05T10:17:23.860 に答える
1
if(newState == BluetoothProfile.STATE_CONNECTED) 
{
   TimerTask task = new TimerTask()
   {
      @Override
      public void run()
      {
         mBluetoothGatt.readRemoteRssi();
      }
   };
   Timer rssiTimer = new Timer();
   rssiTimer.schedule(task, 1000, 1000);
}
于 2014-01-03T07:16:44.430 に答える