我使用以下方法检查我的蓝牙配件是否已连接到我的iPhone:
- (BOOL)checkAccessory {
NSArray *accessories = [[EAAccessoryManager sharedAccessoryManager] connectedAccessories];
EAAccessory *selectedAccessory = nil;
if ([accessories count]) {
for (int i = 0; i < [accessories count]; i++) {
selectedAccessory = [accessories objectAtIndex:i];
for (NSDictionary *tmpDict in accessories) {
if ([[tmpDict valueForKey:@"manufacturer"] isEqualToString:@"FOO"]) {
return YES;
}
}
}
}
return NO;
}
我知道ExternalAccessory
框架仅适用于MFi设备,我在Info.plist文件中声明了所有需要的协议。
这种情况很好,除了一种情况:当我重新启动智能手机并再次启动我的测试应用程序时,connectedAccessories
方法返回零配件,即使外围设备已打开并连接到iPhone(在蓝牙设置,附件显示已连接且状态栏中的蓝牙图标处于活动状态。
有人可以帮我解决这个问题吗?