我正在尝试使用XCode 5中内置的一些库链接到XCode 4中的某个应用程序。 该库引用了iOS7 SDK中定义的常量,但不包含在iOS6 SDK中。
所以我收到了这个错误:
架构armv7s的未定义符号: “_CBPeripheralManagerRestoredStateServicesKey”,引自:
有没有办法保持与iOS 6的XCode 4和SDK的向后兼容性?
答案 0 :(得分:0)
+ (NSString *)getCoreBluetoothConstantByName:(NSString *)name
{
void *libHandle = dlopen("/System/Library/Frameworks/CoreBluetooth.framework/CoreBluetooth", RTLD_LOCAL);
if (libHandle != NULL)
{
NSString **key = dlsym(libHandle, [name cStringUsingEncoding:NSASCIIStringEncoding]);
dlclose(libHandle);
return [[*key copy] autorelease];
}
return nil;
}