2011-12-27 30 views
2

我在這裏是新的,我懷疑我錯過了一些明顯的,但網絡搜索和閱讀 蘋果文檔沒有幫助。我卡在這裏。iPhone EAAccessoryManager返回一個空的NSArray

我有一個iPhone 4運行IOS 4.2.10與三星HM1100藍牙耳機連接。 我確定它是連接的,因爲iphone的常規設置如此,當我按下HM1100上的呼叫按鈕時,iphone響應 。我無法升級到IOS 5和CBCentralManager。 HM1100應該是iphone4兼容(藍牙版本2.1 + EDR)。

我iPhone應用程序被導入ExternalAccessory/ExternalAccessory.h

和代碼具有下列線路

NSArray *accessories = [[EAAccessoryManager sharedAccessoryManager]connectedAccessories]; 

NSLog(@"acessories %@", accessories); 

代碼編譯,併成功地在連接到的Xcode 4調試 上的iphone運行macbook pro並打印出一個空數組,如下所示。

2011-12-27 15:03:25.106 View Switcher[102:307] acessories (
) 

我希望它返回至少一個EAAccessory對象在數組中。我一定在做 有什麼不對。

感謝, AB

回答

3

EAAccessory只針對定製服務功能的iPod行貨配件。如果它沒有獲得許可,並且它不會顯示在列表中。您不能只連接任意的藍牙耳機或其他設備。

+0

是的,標準藍牙耳機不是符合MFi標準的附件,因此它不會顯示在外部附件框架的連接附件列表中。 – 2011-12-27 21:46:47

+0

謝謝。我確實讀了一些關於MFi合規性的內容,但我並沒有意識到這意味着這一點。很明顯,ios知道如何連接到這款耳機,但只是設計爲不將該信息傳遞給我的應用程序。 – user1118271 2011-12-28 03:23:58

+1

因此,我得到了一款「Made for iPhone」Zomm Wireless Leash Plus,並將它與iPhone連接起來。顯示在我的問題中的代碼EAAccessoryManager代碼仍然沒有看到它。 – user1118271 2011-12-30 01:42:13

0

正如Brad Larson指出的那樣,您的配件可能使用標準藍牙配置文件(如免提配置文件),因此它不會顯示在列表中。