2012-01-12 38 views
4

我試圖通過藍牙在iOS和OSX之間發送/接收數據。是否可以通過CoreBluetooth將iPhone4S連接到MBA?

由於GameKit不支持OSX,我需要使用其他選項。 iPhone4S和最新的Mac Book Air支持藍牙4.0, ,所以我認爲可以在這些設備之間建立連接。

但我下面的示例代碼不起作用,需要你的幫助。 雖然我只是創建CBCentralManager並開始掃描設備(有兩個的iPhone4S和MBA在手), - centralManager:didDiscoverPeripheral:advertisementData:RSSI:從未被稱爲...

- (void)start { 
    self.mgr = [[[CBCentralManager alloc] initWithDelegate:self queue:nil] autorelease]; 
    NSDictionary * opts = [NSDictionary dictionaryWithObjectsAndKeys: 
              [NSNumber numberWithBool:YES], CBCentralManagerScanOptionAllowDuplicatesKey, nil]; 
    [self.mgr scanForPeripheralsWithServices:nil options:opts]; 
} 

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI 
{ 
    // not called this delegate method... 
} 

這有什麼錯我的代碼?我錯過了什麼嗎?

回答

1

不,恐怕CoreBluetooth僅適用於低能耗設備(手錶,健康監測器等)。 使用此藍牙配置文件無法將兩個低能量「主機」設備連接在一起。

0

我不認爲德莫特給了我們一個正確的完整答案。

您應該檢查這個Apple technical note,它清楚地解釋說,你可以通過你的MBP使用藍牙LE又名CoreBluetooth API,但你必須插入一個藍牙LE USB適配器

1

對於iOS 5.x的你不能。但是隨着iOS 6.x(尤其是CBPeripheralManager)的CoreBluetooth框架的增強,兩個BLE設備之間的數據傳輸成爲可能。

蘋果剛剛發佈了最新的sample code

0

從iOS 7.0和OS X Mavericks開始,我相信這是可能的。查看兩種操作系統的最新CoreBluetooth文檔。

相關問題