繁体   English   中英

读取Android Studio中连接的蓝牙低功耗设备的RSSI值

[英]Reading RSSI value of connected Bluetooth Low Energy device in Android Studio

我正在开发Android Studio中的BLE项目,并希望读取已连接到的设备的RSSI值。 到目前为止,我能够通过LE Scan发现新设备并从那里获取RSSI。 但是,一旦我连接到设备,我就无法再运行扫描并获得RSSI。

这是在连接到其中一个设备之前发现新设备的代码。 不确定它与我的问题有多相关:

private BluetoothAdapter.LeScanCallback mLeScanCallback =
        new BluetoothAdapter.LeScanCallback() {

    @Override
    public void onLeScan(final BluetoothDevice device,final int rssi, byte[] scanRecord) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                mLeDeviceListAdapter.addDevice(device, rssi);
                //mLeDeviceListAdapter.notifyDataSetChanged();
                try {
                    mLeDeviceListAdapter.notifyDataSetChanged();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
};

提前致谢

您必须使用readRemoteRssi()异步调用,然后使用回调获取RSSI值。 https://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#readRemoteRssi()

详情请见https://stackoverflow.com/a/20236561

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM