EAAccessory接受所有协议字符串

问题描述:

在EAAccessoryManager的文档中,它表示我们需要在设置plist中添加“支持的外部附件协议”。但是这可以为已知的协议字符串完成。如果我不知道不在列表中的协议字符串或字符串,如果我的应用程序必须检测任何“为iPod制作”的任意设备,该怎么办?EAAccessory接受所有协议字符串

而且我该如何知道设备的协议字符串?在哪里可以找到这个?

,如果你想获取protocolString试试这个:

//Load all connected accessories 
    NSMutableArray *_accessoryList = [[NSMutableArray alloc] initWithArray:[[EAAccessoryManager sharedAccessoryManager] connectedAccessories]]; 
//Load attribute protocolString into NSString, note that the "objectAtIndex" is just to show the string on a UITableViewCell of a UITableView. 
    NSString *eaAccessoryProtocolString = [[_accessoryList objectAtIndex:indexPath.row] protocolString]; 

在Info.plist中必须添加的设备实现的协议,而且它必须是相同的应用程序。在这种情况下,您需要联系制造商,否则您必须应用MFi/WWi许可证,并且您可以定义自己的协议,例如数据模式以便将数据发送到外部设备或从外部设备恢复数据。

希望这是有用的。

+0

是的,这又要求我们指定至少一些协议字符串,但是是否有任何通用字符串可以接受任何连接的设备? – RVN 2010-10-15 19:59:43

+2

不,我认为这是设计。他们不希望你能够窥探其他设备。想象一下,如果您能够拦截信用卡读卡器,您可以做些什么! – Luke 2011-06-30 01:02:20

+2

您可以在不联系制造商的情况下获得支持的协议字符串。苹果自己的示例代码EADemo做到了。 – Boon 2013-02-14 01:44:40