Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android蓝牙低功耗readRemoteRssi大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我无法弄清楚如何获得’onReadRemoteRSSi’回调工作.

我的代码非常简单:

final BluetoothManager bluetoothManager = (BluetoothManager) getSystemservice(Context.bLUETOOTH_serviCE);
    BluetoothAdapter mBluetoothAdapter = bluetoothManager.getAdapter();
    BluetoothGatt gatt;

    mBluetoothAdapter.startLeScan(new LeScanCallBACk() {

        @Override
        public void onLeScan(BluetoothDevice device,int RSSi,byte[] record) {
            gatt = device.connectGatt(getApplicationContext(),false,new BluetoothGattCallBACk() {
                @Override
                public void onReadRemoteRSSi(BluetoothGatt gatt,int status) {
                    super.onReadRemoteRSSi(gatt,RSSi,status);
                    Log.d(tag,"RSSi is : " + RSSi);
                }
            });
        }
    });

    gatt.readRemoteRSSi(); //returns true

永远不会调用回调.
有谁有想法吗 ?

谢谢 !

解决方法

将readRemoteRSSi()放在BluetoothGattCallBACk的回调onConnectionStateChange()中.

private final BluetoothGattCallBACk mGattCallBACk = new BluetoothGattCallBACk() {
    @Override
    public void onConnectionStateChange(BluetoothGatt gatt,int status,int newStatE) {
        String intentAction;
        if (newState == BluetoothProfile.STATE_CONNECTED) {
            intentAction = ACTION_GATT_CONNECTED;
            mConnectionState = STATE_CONNECTED;
            Boolean RSSiStatus = mBluetoothGatt.readRemoteRSSi();
            broadcastupdate(intentAction);
            // Attempts to discover services after successful connection.
            Log.i(tag,"AttempTing to start service discovery:" +
                    mBluetoothGatt.discoverservices());
        }
    }
};

并且还将onReadRemoteRSSi放在BluetoothGattCallBACk函数

@Override
public void onReadRemoteRSSi(BluetoothGatt gatt,int status){
    if (status == BluetoothGatt.GATT_succesS) {
        Log.d(tag,String.format("BluetoothGatt ReadRSSI[%d]",RSSi));
    }
}

大佬总结

以上是大佬教程为你收集整理的Android蓝牙低功耗readRemoteRssi全部内容,希望文章能够帮你解决Android蓝牙低功耗readRemoteRssi所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。