打包自己Framework中含有第三方库的解决方案分CocoaPods与手动导入两种方式

文本着重点在自己打包时包含第三方库,同时工程在用问题的解决.如何打包framewprk的文章比较多本文不再重点讲述;

本文借鉴了:https://www.jianshu.com/p/cb17d6bae5a0  iOS中,Framework.a的打包及使用

                  https://www.jianshu.com/p/6790fc295f48      iOS 开发】打包 Framework 时使用 CocoaPods 引入第三方库的方法

摘要:

      1.采用手动方式导入的第三方库,在打包framework时候,添加到工程时候不要够算添加到当前打包的工程的framework

2.通过Cocoapods管理第三方库时,真机模式下没问题,模拟器模式下,

  • 选中 Target ,选择 Build Settings ,在 Architectures 下增加 armv7s 。
  • 一.采用手动导入第三方SDK方式 
  • 1.创建framework

2.在buid setting 搜索 mach

将Mach-O Type 改为 Static Library(静态库)类型

3.Build Active Architeture only 改为NO

 3(2)选择需要公开的头文件

这里有一个注意点,公开的头文件中,#import的其他类也要公开,添加到public中,如果不想公开,就在头文件用用@class的方式,在对应的.m中用#import方式

4.手动导入第三方库不要添加到该framwork上面 

5.选中真机和模拟器分别编译一下

6.合并真机和模拟器生成的二进制文件

打开终端 输入 lipo -create第一个framework文件下二进制文件的绝对路径 第二个framework文件下二进制文件的绝对路径 -output 最终的二进制文件路径 然后enter键

7.生成的二进制文件替换原先的真机生成或模拟器生成的二进制文件,然后相应的其所在的.framework文件就是最终的framework,将其导入别的工程使用时这个工程需要引进制作framework时用到的第三方SDk

二.使用cocoapods导入到framwork时注意事项,其他都和手动导入一样,当在模拟器编辑时候会报错,

选择 Build Settings ,在 Architectures 下增加 armv7s 。真机下不许改动,如果改动变异会报错

原文地址:https://www.cnblogs.com/qizhuo/p/9101650.html