2014-02-20 77 views
1

我開發了一個BLE設備,充當主設備,並連接到作爲從設備的傳感器。現在我想開發一個應用程序,它可以實時顯示來自我的設備(主設備)的數據,以便應用程序必須充當從設備(廣告)。哪些平臺具有藍牙4.0外設/從屬支持?

  • Windows 8的API:不支持
  • 的Windows Phone:不支持
  • 的Windows RT:不支持
  • Android 4.4的API:不支持
  • iPhone/Mac的:支持

如此看來它真的不可能通過自定義棧開發任何類型的應用程序對於這一點,除了在Linux上,也許,或在Windows上,但我寧願這樣做在手機上,如果可能的話沒有一個iPhone 。

有誰知道任何支持開箱即用的手機/平板電腦操作系統?

+0

也許你可以讓你的嵌入式設備在收集數據(以中心角色)和廣告報告能力(外圍角色)之間切換模式。 –

+0

@ChrisStratton問題是,只要我切換,我就鬆開了與傳感器的連接,並且在報告它時,他們的數據需要連續記錄到microSD卡。 – Muis

+0

在這種情況下,您可能希望兩個嵌入式BLE設備以不同模式運行,並通過串行連接或類似的方式背靠背連接 - 儘管對於真正連續的收集,您確實需要傳感器中的緩衝存儲器來解決通信的短暫中斷。也就是說,iOS至少支持*外設模式,以便能夠發送某些類型的廣告數據包。 –

回答

1

在相同類型的情況下工作,發現在所有平臺中,只有iOS/Mac OS支持外設(從屬)和中央(主)角色。

對於外設角色,您將不得不使用CBPeripheralManager,並且必須設置您自己的服務/特性。對於中央,您將不得不使用CBCentralManager,它將通過委託通知接收CBPeripheral對象。然後你將不得不查詢它的服務/特性/描述符。

所以我想說,今天你已經沒有外圍角色的選擇,只有iOS/Mac OS。

0

Android 4.3(API級別18)引入了對藍牙低功耗的中央角色的內置平臺支持,並提供應用程序可用於發現設備,查詢服務和讀/寫特徵的API。

爲了使用藍牙應用程序中的功能,你必須就我知道的手機,平板電腦,PC和那種「無能源問題」的設備是遠遠申報藍牙權限

<uses-permission android:name="android.permission.BLUETOOTH"/> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 
+1

這不是對被問及的外圍角色問題*的回答。 –

0

更適合作爲主人。因此,主模式是唯一支持的模式

我的建議:我不知道如果可能,但我會將您的BLE設備的邏輯移動到android/iphone /任何應用程序並刪除您的自定義設備。