教你轻松打包.a和framework静态库

项目空隙,总结之前打包静态库经历
一  .a静态库打包

1.首先打开xcode新建工程,选择CocoaTouch Static Library 截图如下

2.Next  取好工程名后完成如下

3.添加你要打包的静态库代码,我是直接用要打包.h .m 文件替换ZYZ_Test.h 和.m文件

需要暴露一个.h文件 给外部申明使用 targets Build Phases 选择 1左上角加号 headers  2 选择加入文件 project 再拖到public暴露

一般.a 库会选择暴露一个.h 文件 那如果你有多个.m 文件 ,那么需要申明就都在那一个暴露的.h文件里,.m太多,一个.h冗余,那可以试试framework打包静态库

4.修改project 最低适配版本号 为 8.0 修改Edit Scheme  run 为Release

4.然后模拟器运行,真机运行下,项目libZYZ_Test.a show in finder 可以发现有两个.a文件

拖出两个libZYZ_Test.a 放在同一个文件夹,修改.a名字两个.a不同名。

5.打开终端输入 

lipo -info "路径"可以查看相关支持信息

lipo -create "真机版本.a静态库路径" "模拟器版本.a静态库路径" -output "合并后的.a静态库路径"

lipo  ".a静态库路径" -thin 你的架构(例如:x86_64​​​​​​​) -output ".a静态库路径" 就能分理出你想要的架构.a静态库

1 2 查看相关.a 信息 3 合并.a 信息 4 查看合并后.a信息

6.将合并后.a拖到相关工程,加上暴露的.h文件就可以使用打包的.a 文件了

二.framework 打包静态库 

1.首先打开xcode新建工程,选择CocoaTouch Framework 截图如下

2.新建完工程后 在PROJECT->Deployment Target->iOS Deployment Target选择你需要支持的最低系统。

同时打包.a 一样 targets -> Build Phases ->  Headers  添加你封装的文件

3.打包。Edit Scheme->Build Configuration->选为Release然后Run即可.真机和模拟器各运行一次

4.项目选中Products 里的framework show in Finder  会看到真机和模拟器各自目录下framework,拖出放到一个文件夹

5.将两个文件夹里的ZYZ_Test 合并 这样真机和模拟器都支持framework库了

lipo -create 真机路径 模拟器路径 -output 合并后文件   

将合并后文件拖到真机framework里替换原来的ZYZ_Test文件就可以了

对了 打完包运行如果出现    dyld: Library not loaded, Reason: image not found

库没加载出来 ,在targets->BuildPhases -> Link Binary With Libraries  点击+ 号,添加进库就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Asia_ZhangQQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值