首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android4.4.4 Moto G蓝牙LE重新连接问题

Android4.4.4 Moto G蓝牙LE重新连接问题
EN

Stack Overflow用户
提问于 2015-04-07 16:00:45
回答 2查看 1.5K关注 0票数 7

我有一个在运行Android4.3的三星S3上工作得很好的应用程序,但是我在Moto上有问题,运行4.4.4

在应用程序使用期间,我的BLE外围设备连接和断开了几次。这很好,但有时应用程序/手机不再与外围设备重新连接。

所有关贸总协定命令都在主线程上运行,例如。

代码语言:javascript
复制
final BluetoothGatt gat = gatt;
Handler handler = new Handler(Looper.getMainLooper());
handler.post(new Runnable() {
@Override
public void run() {
  // This code will be executed on the main thread
  if (Looper.myLooper() == Looper.getMainLooper()) {
    Log.e(TAG, "mGattCallback disconnect2: NOW ON MAIN THREAD :)");
  }
  gat.disconnect();
  }
});

周边的连接也很好。当这种情况发生并且我不能再连接到外围设备时,我会得到大量的日志,如下所示:

代码语言:javascript
复制
04-07 16:57:56.798: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.798: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:56.833: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.833: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:56.871: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.871: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:56.906: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.906: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:56.941: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.941: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:56.977: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:56.977: I/bt-hci(2127): btu_ble_process_adv_pkt
04-07 16:57:57.016: I/bt-hci(2127): BLE HCI(id=62) event = 0x02)
04-07 16:57:57.016: I/bt-hci(2127): btu_ble_process_adv_pkt

我需要退出这个应用程序,关掉蓝牙,让它重新正常工作。

有没有已知的问题、建议或建议?

谢谢

编辑-经过进一步的测试之后,似乎让应用程序继续运行,最终我得到了以下日志,然后我的外围设备就可以重新连接起来了。

代码语言:javascript
复制
04-13 19:11:53.973: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:53.973: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:54.076: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:54.076: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:55.986: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:55.986: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:56.087: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:56.087: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:56.629: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:56.629: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:56.734: I/bt-hci(2034): BLE HCI(id=62) event = 0x02)
04-13 19:11:56.734: I/bt-hci(2034): btu_ble_process_adv_pkt
04-13 19:11:58.925: D/MDMCTBK(275): reply_len: 40 reply is = IFNAME=wlan0 <3>CTRL-EVENT-SCAN-RESULTS 
04-13 19:11:58.925: D/MDMCTBK(275): Event received = CTRL-EVENT-SCAN-RESULTS 
04-13 19:11:58.926: D/WifiStateMachine(1010): handleMessage: E msg.what=147461
04-13 19:11:58.926: D/WifiStateMachine(1010): processMsg: DisconnectedState
04-13 19:11:58.926: D/WifiStateMachine(1010): processMsg: ConnectModeState
04-13 19:11:58.926: D/WifiStateMachine(1010): processMsg: DriverStartedState
04-13 19:11:58.927: D/WifiStateMachine(1010): processMsg: SupplicantStartedState
04-13 19:11:58.928: D/TCMD(4253): NL - Read 56 bytes from update socket.
04-13 19:11:58.928: D/TCMD(4253): NL - message type is RTM_NEWLINK
04-13 19:11:58.928: D/TCMD(4253): Listening for incoming client connection request
04-13 19:35:18.787: V/AlarmManager(1010): sending alarm Alarm{42b84cc0 type 2 com.google.android.gms}
04-13 19:35:18.787: V/AlarmManager(1010): sending alarm Alarm{42b83a00 type 0 android}
04-13 19:11:58.941: D/WifiStateMachine(1010): handleMessage: X
04-13 19:12:00.615: D/WifiStateMachine(1010): handleMessage: E msg.what=131143
04-13 19:12:00.615: D/WifiStateMachine(1010): processMsg: DisconnectedState
04-13 19:12:00.616: D/WifiStateMachine(1010): processMsg: ConnectModeState
04-13 19:12:00.617: D/WifiStateMachine(1010): processMsg: DriverStartedState
04-13 19:12:00.628: D/WifiStateMachine(1010): handleMessage: X
04-13 19:12:01.425: D/MDMCTBK(275): reply_len: 40 reply is = IFNAME=wlan0 <3>CTRL-EVENT-BSS-REMOVED 1
04-13 19:12:01.425: D/MDMCTBK(275): Event received = CTRL-EVENT-BSS-REMOVED 1
04-13 19:12:01.425: D/MDMCTBK(275): reply_len: 40 reply is = IFNAME=wlan0 <3>CTRL-EVENT-SCAN-RESULTS 
04-13 19:12:01.425: D/MDMCTBK(275): Event received = CTRL-EVENT-SCAN-RESULTS 
04-13 19:12:01.425: D/WifiStateMachine(1010): handleMessage: E msg.what=147461
04-13 19:12:01.426: D/WifiStateMachine(1010): processMsg: DisconnectedState
04-13 19:12:01.426: D/WifiStateMachine(1010): processMsg: ConnectModeState
04-13 19:12:01.426: D/WifiStateMachine(1010): processMsg: DriverStartedState
04-13 19:12:01.426: D/WifiStateMachine(1010): processMsg: SupplicantStartedState
04-13 19:12:01.428: D/MDMCTBK(275): reply_len: 40 reply is = IFNAME=p2p0 <3>CTRL-EVENT-BSS-REMOVED 1 
04-13 19:12:01.428: D/MDMCTBK(275): Event received = CTRL-EVENT-BSS-REMOVED 1 
04-13 19:12:01.428: D/TCMD(4253): NL - Read 56 bytes from update socket.
04-13 19:12:01.428: D/TCMD(4253): NL - message type is RTM_NEWLINK
04-13 19:12:01.428: D/TCMD(4253): Listening for incoming client connection request
04-13 19:12:01.444: D/WifiStateMachine(1010): handleMessage: X

这看起来像是和WiFi有关?!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-15 07:07:47

我认为不会有像“使用主线程”这样简单的答案,一切都会好起来的。但我可以给你一些提示,我收集到了一些在使用糟糕的Android时收集到的提示:

  • BT堆栈在不同的手机上会有所不同,不幸的是,Moto G是最讨厌的手机之一,如果我们说的是BLE。有多烂?贴片应用程序甚至在他们的F.A.Q Android手机将与什么协同工作中声明

将只与三星银河S5、宏达电1 M8、宏达电1、LG Nexus 4、LG Nexus 5、LG Nexus 6、三星Note 4、摩托罗拉Moto X合作,而且肯定不会与Moto G合作。

Bluedroid继续成熟和稳定;仅从4.4 -> 5.0中就有565次提交,而4.3 -> 4.4中有52次提交,4.2 -> 4.3中有47次提交。*这是目前AOSP内的一个重大活动区域。

票数 4
EN

Stack Overflow用户

发布于 2015-04-15 12:38:15

这是MotoG特有的问题,我以前在MotoG设备上也遇到过同样的问题。从蓝牙低能还不够成熟的时候起,Wifi和蓝牙的功能就会对特定的设备产生干扰。

从我之前做过的研发,不确定这是否是一个OS版本和设备特定的组合,但有一些问题与蓝牙和Wifi有关,更多的是蓝牙低能和Wifi,很多是设备特定的。

关于你面临的问题,在Android开源项目上也有问题--问题追踪器和其他博客也是如此;

第39995期

第41631期

Nexus 5、Nexus 4和Nexus 7 (2013) Android 4.4蓝牙问题

虽然我还没有在Nexus 5中面对过这个问题

不管连接的数量,Wifi影响蓝牙低能量。另外,连接的重连接和超时也可以是硬件端的属性。

您的代码很好,希望您节省一些时间,我已经在MotoG和其他一些设备上花了一些时间;就像通过BluetoothGatt和iBeacon框架与ble设备交互时蓝牙低能量和wifi干扰的情况一样。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29495989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档