我们在项目开发的过程中难免会用到一些第三方的插件,来实现比如人脸识别,扫描银行卡,蓝牙等等一些需要调用手机硬件的功能. 这样我们就要导入第三方给提供的静态库也就是.a文件, 但是这些.a文件往往都只支持真机,不支持模拟器.
这样在模拟器编译就会报错,
解决方法:
找到工程中调用该插件的入口,(一般都是初始化的时候) 在此时对运行环境做判断,
+ (FMWearSDK *)fmWearShareInstance{
static FMWearSDK *instance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
#if TARGET_IPHONE_SIMULATOR
#elif TARGET_OS_IPHONE
instance = [[FMWearSDK alloc]init];
#endif
});
return instance;
}
判断是真机还是模拟器! 只在真机的情况下调用插件的初始化方法!