[英]BLE device works on ios but not on Android
這是我的問題
我有一個使用BLE的電子鎖,它在ios上正常工作(LightBlue和我制作的應用程序)
但是在Android上,用鎖綁定(我輸入的密碼為000000)后,我可以連接到設備,但是其中一個服務(UUID:7570)變為空,並且我無法讀取或寫入任何特征。
此外,設備始終會在約20秒后斷開連接。
這是來自iOS的ScreenShot
這是來自Android的ScreenShot(帶有空服務)
這是我從nRF Connect獲得的日志
nRF Connect, 2018-02-07
OHGA-ELock 60012 (68:C9:0B:15:99:0D)
V 17:57:52.234 Connecting to 68:C9:0B:15:99:0D...
D 17:57:52.234 gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE)
D 17:57:52.767 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I 17:57:52.767 Connected to 68:C9:0B:15:99:0D
D 17:57:52.769 wait(1600ms)
D 17:57:52.785 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
V 17:57:54.373 Discovering services...
D 17:57:54.373 gatt.discoverServices()
D 17:57:54.395 [Callback] Services discovered with status: 0
I 17:57:54.395 Services discovered
V 17:57:54.414 Generic Access (0x1800)
- Device Name [R] (0x2A00)
- Appearance [R] (0x2A01)
- Peripheral Preferred Connection Parameters [R] (0x2A04)
Generic Attribute (0x1801)
Unknown Service (00007570-0000-0000-0000-000000000000)
Device Information (0x180A)
- System ID [R] (0x2A23)
- Model Number String [R] (0x2A24)
- Serial Number String [R] (0x2A25)
- Firmware Revision String [R] (0x2A26)
- Hardware Revision String [R] (0x2A27)
- Software Revision String [R] (0x2A28)
- Manufacturer Name String [R] (0x2A29)
D 17:58:10.701 [Callback] Connection state changed with status: 8 and new state: DISCONNECTED (0)
E 17:58:10.701 Error 8 (0x8): GATT CONN TIMEOUT
I 17:58:10.701 Disconnected
D 17:58:10.794 [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
我已經在具有不同測試應用程序的不同Android手機上對其進行了測試。
是否有可能是BLE設備的問題?
如果需要更多具體細節,請告訴我。
任何幫助或建議,將不勝感激。 謝謝!
約20秒后,設備始終會斷開連接
這是因為監督超時 。 在Android中,它被硬編碼為20秒,在此期間無法重新連接。 要了解更多信息以了解這20秒和監管超時,請看這里-Android BLE連接超時和GATT內部錯誤
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.