2017-08-03 70 views
2

我是基於原生應用程序開發的新手。我們必須開發一個需要通過BLE(藍牙低功耗/智能藍牙)進行通信的移動應用程序(作爲BLE客戶端)來監視IOT設備(BLE外設/中央)。我們正在使用Bluetooth SIG的Bluetooth Developer studio工具來設計自定義BLE服務併爲我們的IOT設備生成BLE配置文件。對於移動端來說,我們將使用Facebook的原生跨平臺框架。是否有任何藍牙低耗能(BLE)庫用於反應本機?

任何人都可以推薦一些好的BLE庫來反應原生應用嗎?

回答

3

在反應原生最好的圖書館,我已經使用下面。你可以測試它。無論您的所有要求是否全面存檔。即使在某些情況下,您也需要操作Android默認藍牙功能。

https://github.com/Polidea/react-native-ble-plx

來解決問題的最好辦法是試着去了解Android和iOS的藍牙功能以及如何很好地處理以上圖書館管理員的工作。

+0

謝謝@ hemant-nagarkoti的答案。我試過這個包,但它太重了。它使用反應式範例。我正在尋找非易反應的庫,它重量輕,易於在XCode中調試。基於反應式編程的庫通常難以調試。 – dann

3

因爲我在一個地方找不到任何好的答案,所以我自己嘗試了一些圖書館。我只是分享我的結論,這可能會有助於其他新手啓動基於本機的BLE客戶端移動應用程序。

所以,下面是客戶端(中央)角色一些好的BLE庫,可以用在陣營原生移動應用: -

  1. react-native-ble-manager: 爲低水平 BLE一個偉大的模塊/庫通過服務和特徵UUID進行通信(即BLE命令作爲十六進制值)它易於使用,被社區和成熟度良好的庫廣泛使用,但需要BLE服務和特有的UUID知識。

  2. react-native-ble-plx開發誰愛ReactiveX編程可以指通過服務和特色的UUID(即BLE命令爲十六進制值)這種低水平BLE通信模塊這是一個非常穩定的庫,積極維護,異步的性質,但需要大量內存由於多個依賴庫以及數據轉換使用base64編碼/解碼,性能相對較差。

  3. react-native-ble-quick-sdk開發誰愛藍牙開發工作室和誰想要快速構建應用程序沒有太多的BLE知識可能指的是中不需要的服務和特色的UUID的知識這個高水平 BLE API模塊(即BLE的命令十六進制值)它需要相對較少的內存並提供更好的性能,因爲它不使用base64進行數據轉換。因爲它使用Node的EventEmitter,所以它本質上是部分反應性的。它會自動爲目標BLE設備生成大量API源,並自動生成設備特定的示例應用程序。最大的缺點是沒有穩定的版本,還沒有被廣泛使用。

  4. react-native-ble:經由服務和特徵的UUID(即BLE命令作爲十六進制的值) 甲風格的NodeJS低電平BLE通信模塊不那麼積極保持,但它是基於一個非常穩定的noble庫。

相關問題