Xcode12创建静态包Framework的一些注意事项

2020-10-22  本文已影响0人  拾荒者121

开始的基本操作就不说了,网上一搜一大把

1、使用cocoapods制作

参考使用CocoaPods打包静态库制作SDK步骤 - 简书

2、使用Aggregare,添加脚本生成

参考iOS SDK~ 打包framework、开发与调试 - 简书

相关注意事项:

1、 Xcode12之后不用修改Architectures中的内容,默认的就行;

2、Xcode12之后项目中不显示framework的层级结构,这个不是打包方法的问题,实现相关方法点击方法进去就可以看到public文件;

3、xcode12由于模拟器编译也包含arm64位架构,所以在静态包Build Settings -Excluded Architectures-Release中添加Any ios Simulator SDK -添加arm64 ,然后在静态包生成的模拟器库就会去掉arm64;

4、在编辑 XXX.podspec时候,添加上

  spec.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }  

spec.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }

不然lib - lint 校验会一直报错(针对Xcode12版本,Xcode12之前版本不知道是否存在此问题)

5、使用脚本打包时候,最后一步如果open"${INSTALL_DIR}" 编译不通过,注释上就行

6、SDK相关开发中注意事项:

a.所有公共的头文件都必须以<testSDK/SDKConfig.h>的形式在testSDK.h的头文件中引入,不然编译不通过;

b.所有公共的头文件在其他类中,也要以绝对路径的方式引入头文件,例如<testSDK/SDKConfig.h>;

c.如果SDK中添加了扩展类,在SDK的使用中需要在Other Linker Flags中添加-ObjC;

 d.    

上一篇 下一篇

猜你喜欢

热点阅读