iOS 封装framework

1.先创建一个工程类型选择iOS framework

2.将要封装的代码加进来后分别选择模拟器和真机情况下进行build。

3.选中生成的framework,Show in finder,找到对应的路径

4.将两个路径分别在命令行中进行验证lipo -info ./name.framework/name      输出(真机下输出armv7 arm64,模拟器下输出i386 x86_64)

5.进行合并lipo -create ./真机/name.framework/name  ./模拟器/name.framework/name -output ./name  得到一个name文件

6.将真机下的framework包拷贝出来,将包里边的name文件用新生成的替换掉就得到了合并后的framework


说明

模拟器:iphone4s-5 : i386 , iphone5s-6plus : x86_64

真机:iphone3gs-4s : armv7 , iphone5-5c : armv7s (静态库只要支持了armv7,就可以跑在armv7s的架构上),

            iphone5s-6plus : arm64。
armv6, armv7, armv7s是ARM CPU的不同指令集,原则是向下兼容的。例如iPhone4S CPU支持armv7, 但它同时兼容armv6,只是使用armv6指令可能无法充分发挥它的特性


问题:将自己封装的framework引入工程的时候出现错误

dyld: Library not loaded: @rpath/SDKFramework.framework/SDKFramework

  Referenced from: /private/var/mobile/Containers/Bundle/Application/107B34E6-F250-4511-9FA9-31526F8E7B84/TestSDKUI.app/TestSDKUI

  Reason: image not found

原因是

在build setting的link library导入SDKFramework.framework后,无法读取framework中的图片资源。

自定义的动态包直接将图片资源编译打包进framework,需要在导入的工程中做配置。

解决方案:

-在build setting界面:target-〉Build Phases -〉左上角+号 -〉New Copy Files Phase 然后在Copy Files下 Destination选择Frameworks -〉添加自定义framework

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值