我爲IONIC 2開發應用程序。我有要求,當我的BLE設備在範圍內自動連接到它。這種情況是我的應用程序是在後臺還是在前臺,我想自動連接我的BLE設備,並且如果斷開連接,則不斷搜索我的設備並在範圍內重新連接。有沒有辦法做到這一點?我已經提到這個:https://github.com/don/cordova-plugin-ble-central
。我還提出了關於檢測BLE連接的問題:How to register for BLE state notification in IONIC 2。但沒有解決方案正在與此相關。但我沒有找到任何東西。請建議任何方式來做到這一點。我想解決這個問題應該可以在iOS和Android上運行。如何在範圍內自動連接BLE設備?
0
A
回答
0
1
在Android中,正確的方法來建立具有以下屬性的一個長期運行的連接:
- 如果設備不在範圍內,它會自動連接當它終於進入範圍(沒有超時)。
- 當設備由於某種原因斷開連接時,Android會在範圍內自動重新連接。
其中AUTOCONNECT參數設置爲true。如果設置爲false,它將有30秒的超時時間,並且在設備斷開連接時也不會自動重新連接。
那個cordova插件,你不幸將硬編碼autoConnect設爲false。因此,您可以更改插件,以便將autoConnect設置爲true,或者您可以設置掃描,永久掃描並連接到您感興趣的設備。但是,該cordova插件使用最大掃描間隔(意味着它掃描100%的時間),通常設置爲平均掃描5-10%的時間,以便不佔用Wi-Fi帶寬,同時節省電池。 ..我說的是,科爾多瓦插件似乎並沒有創建的目的,你會有長期運行的後臺連接,可能需要一些時間來連接。
爲了確保您的應用程序不會在後臺死亡,您需要在連接到BLE設備的同一進程中的某處運行「Foreground Service」(https://developer.android.com/guide/components/services.html#Foreground)。
相關問題
- 1. 當範圍內自動連接到藍牙設備
- 2. Ble外圍設備已斷開連接
- 3. 限制BLE外圍設備僅連接到一個主設備
- 4. BLE設備在cancelPeripheralConnection後重新連接(如何忘記BLE設備?)
- 5. Android BLE外圍設備數據接收
- 6. 無法在Android 5和BLE設備之間建立BLE連接
- 7. iOS作爲BLE外圍設備 - 連接問題
- 8. 連接BLE設備樹莓失敗
- 9. 如何在GATT連接後與BLE設備配對
- 10. iOS連接和維護連接到BLE外圍設備的最佳方式
- 11. 連接BLE外圍單iPhone
- 12. BLE設備超時後,Android BLE不再連接[使用RxAndroidBle]
- 13. 如何在設備連接時自動設置波特率?
- 14. 如何連接到特定的BLE設備?
- 15. 如何範圍連接表?
- 16. Android BLE GATT斷開連接與設備斷開連接
- 17. 連接USB(或BLE)設備時啓動Play商店
- 18. Android作爲BLE外圍設備
- 19. 外圍BLE設備的唯一標識
- 20. 藍牙自動連接配對設備
- 21. 檢測BLE設備是否可以在Android上連接
- 22. Android BLE出乎意料地反覆重新連接到外圍設備
- 23. 如何讓Android BLE連接到Bluez外設? (連接問題)
- 24. 如何獲得外設(BLE設備)和中央(iPhone)的連接間隔
- 25. 如何將iOS設備連接到自定義USB設備?
- 26. 如何在不同範圍內連接兩個變量?
- 27. 如何檢測BLE設備已經沒有連接到它在Android
- 28. 如何查看外圍設備的BLE服務?
- 29. LINQ連接範圍
- 30. Multipeer連接範圍?