2016-12-12 85 views
6

Apple提供以下兩種框架用於與iOS附近的藍牙設備進行通信。CoreBluetooth和ExternalAccessory框架有什麼區別?

CoreBluetooth:

核心藍牙框架提供需要爲您的iOS和Mac應用程序與配備了藍牙低功耗無線技術的設備通信的類。

ExternalAccessory:

外部附件框架提供用於與通過任一蘋果閃電或30針連接器,或無線地使用藍牙連接至基於IOS的設備外部硬件進行通信的支持。

我以前使用CoreBluetooth框架成功地與藍牙設備進行通信。但是,我正在嘗試與藍牙打印機進行通信,並且在掃描附近的設備時不顯示它。使用ExternalAccessory框架,它可以。

這兩個框架在與藍牙設備通信方面有什麼不同?爲什麼不同的藍牙設備需要使用不同的框架?

回答

1

有兩種藍牙,藍牙LE,它的帶寬非常有限,但不需要在設置應用程序和Bluetooth Classic中進行任何用戶配對,這需要用戶配對設備,但爲您提供更多功能和帶寬。 CoreBluetooth支持藍牙LE,您可以將其與開發者帳戶配合使用。 Bluetooth Classic要求您加入Apple MFi程序。

+0

我想我明白了。因此,即使在通過設置與它們配對之後,經典的藍牙設備也不會在CoreBluetooth的掃描中顯示出來?並且加入MFi計劃是所有與經典藍牙設備通信的應用程序的合法要求,或者只有當您想要看起來「真實」併發布到應用程序商店? – Extragorey

+0

如果您不打算髮布您的應用程序,那麼您可以使用外部附件框架連接到設備。 – Paulw11

2

核心藍牙只允許您使用GATT配置文件與藍牙低功耗設備進行通信。

外部附件框架允許使用諸如串行端口協議(SPP)之類的配置文件與'傳統'藍牙設備進行通信。爲了與使用外部附件框架的設備進行通信,設備必須通過MFi程序進行認證。

我也相信,爲了獲得一個應用程序,可以使用經批准的外部附件框架與MFi設備進行通信,MFi許可證持有者(即打印機供應商)需要提供一些文件以授權您的應用程序。

相關問題