CocoaPods-package 二进制记录

一、安装

sudo gem install cocoapods-packager

二、打包

#(推荐)
pod package 项目名.podspec  --force              打包成.framework文件

#(不推荐)
pod package 项目名.podspec  --library --force    打包成.a文件。--force是指强制覆盖

这里需要注意,因为打包成library只有二进制,没有头文件,无法使用,所以这里只用打包Framework的方式

三、使用

image.png

把你刚刚打包好的xxxx.framework文件直接拖入项目中(注意是在xxxx.embededframework目录里)


image.png

引入头文件使用,#import<xxxx/xxxx.h>,使用

四、遇到的问题

1. 经典崩溃找不到方法,由于符号优化机制,分类中的方法在链接的时候会被优化掉,导致在运行时找不到方法

参考下面的链接:
iOS:Other Linker Flags 之 -ObjC
https://www.jianshu.com/p/a94dbc12729e

但是这么改了,后续会和cocoapods冲突,导致分类很多符号丢失,困扰了我半天,最后重新起了demo项目,才解决,pod的设置如下情况:


image.png

2.由于使用了Framework,在项目中podfile中需要开启

use_frameworks!

在podfile的target项目里加入

pre_install do |installer|
      # workaround for https://github.com/CocoaPods/CocoaPods/issues/3289
      Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
    end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容