android ble 连接服务,android ble直接通过地址连接失败

所以我有这种情况。

如果我扫描新的le设备并连接到找到的任何设备,我就能成功连接,但如果我将该设备地址存储在内存中,关闭应用程序并再次打开,然后尝试在我的onconnectionstatechange中直接连接我将newstate设置为bluetoothprofile.state_大多数时间断开连接,但并不总是如此。

这似乎发生在GalaxyS7上,但在我的另一个廉价平板电脑上没有。

我的连接逻辑如下:

BluetoothDevice bluetoothDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(

device.getAddress());

Log.i(TAG, "Found device: " + bluetoothDevice.getAddress()

+ " (" + bluetoothDevice.getName() + ") Type: " + bluetoothDevice.getType());

bluetoothGatt = bluetoothDevice.connectGatt(context, false, new BluetoothGattCallback() { <..> }, BluetoothDevice.TRANSPORT_LE);

我的onconnectionstatechange方法如下:

@Override

public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {

Log.i(TAG, "New connection state: " + newState);

if (newState

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值