Undefined symbols for architecture arm64:
“_OBJC_CLASS_$_CTTelephonyNetworkInfo”, referenced from:
objc-class-ref in libPushSDK-1.8.4.a(JPFUtilities.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
1、极光推送的SDK添加到工程中后,编译报如上所示错误,网上有贴说明是直接将SDK拖入到工程中所致;
2、解决办法是在本地再次添加极光推送的的静态库文件(libPushSDK-1.8.4.a);
3、事实上这样未必就能完全解决,解决问题的关键还是要回到错误信息上去分析;
4、从错误提示上来看,很显示说明问题来自于libPushSDK-1.8.4.a这个库文件生成.o文件时编译不通过,而原因人家已经写得非常清楚明白了,缺少的是CTTelephonyNetworkInfo这个类或对象;
5、明白这一点问题就好办了,这肯定是某相系统库没有引用进来,CoreTelephony.framwork,这是他了,将这个引入到工程中即可解决!