2013-05-30 81 views
1

在瀏覽文檔和大多數BTLE和CB stackoverflow問題後,我已達到極限。與非iOS設備的CoreBluetooth連接

我正在做一個iOS應用程序,應該與BT 4.0設備通信。詢問數據,並接收特定數據。 該裝置的文件說,例如: 請求: 數據
開始1「d」讀取登錄命令代碼
逗號1「」逗號
側1的‘L’或‘r’
逗號1「,」逗號
圖1「0」,「1」或「2」
逗號1「,」逗號
結束1;命令結束字符

響應: 開始1 「d」 讀取記錄資料的命令代碼
逗號1 「」 逗號
側1的 「L」 或 「r」
逗號1 「」 逗號
圖1「0」,「1」或「2」
逗號1「,」逗號
結束1;命令終止字符

已經完成相同應用的Android開發者說:「我將字符串轉換爲字節大小,使用ASCII並將其發送到BT適配器」。 好吧,聽起來不錯。但是當我們需要使用CoreBluetooth時,它是如何工作的?至於現在我建立了兩個設備之間的連接,iPad和iPhone,以及我基本上了解它是如何工作的,但仍然不知道如何以及在哪裏發送這些字節字符串。

任何提示,想法,任何人都經歷過這樣的事情?

回答

3

試試這個:

[yourConnectedPeripheral writeValue:[yourString dataUsingEncoding:NSUTF8StringEncoding] forCharacteristic:theCharacteristicToWrite type:CBCharacteristicWriteWithResponse]; 

寫,你將不得不使用NSData的,這就是爲什麼有是dataUsingEncoding(請注意,您可以更改編碼,如果它是不一樣的Android應用之一) ,並與CBCharacteristicWithResponse你會知道它被正確寫在代表方法peripheral:didWriteValueForCharacteristic:error:

+0

謝謝你的建議,我一定會嘗試它。如果有效,我接受你的回答:) – Dumoko