cocoapods私库制作流程

Step 1:创建项目工程

cd到合适的目录,在终端执行 pod lib create ProjectName
当执行pod lib create ProjectName时,其实是下载了一个pod模板,然后在内部通过更改.podspec文件的配置定制化自己的pod,

pod lib create ProjectName其实使用了默认参数,补全的话pod lib create ProjectName --template-url=https://github.com/CocoaPods/pod-template.git

所以,由于各种原因连接不上github时,我们可以使用国内替代源
pod lib create ProjectName --template-url=https://gitee.com/joshuageng/pod-template.git

Step 2: 创建仓库

在gitlab、github或者gitee中创建私库保存的仓库,拉取仓库到本地。
将上一步中除了.git文件夹外的所有文件复制到新建的仓库地址中。

Step 3:修改podspec文件

使用Xcode打开Example项目,修改podspec文件,将仓库地址修改为上一步中新建的仓库地址


image.png

Step 4:上传代码到仓库

上传代码到仓库,打上和podspec中相同的tag


image.png

Step 5:远程验证

在终端中cd到项目目录下,执行pod spec lint —allow-warnings —verbose,提示验证通过则可以开始下一步,未通过则需要检查podspec文件是否配置正确

image

Step 6:提交索引

1、将远程端私有索引库(Repo)添加到本地

pod repo add ZWTest111 http://192.168.6.120/zhangwei_ios/podtest.git

2、提交到远程端私有索引库

pod repo push ZWTest111 ZWTest111.podspec —allow-warnings

完成,验证成果

在项目podfile中引用刚才制作的私有库

image
image

常见问题

1、如果pod中用到framework,应该在哪里添加?
如果pod中用到framework,如AVFoundation,直接在podspec文件中添加s.frameworks = ‘AVFoundation’或者s.frameworks = [‘AVFoundation’,'MapKit'],而不应该添加在项目的Link Binary With Libraries下面。
2、如果pod中需要使用其他三方库,在哪里添加?
也是在podspec文件中添加s.dependency,例如:s.dependency 'Moya','~> 13.0.1’
3、如何制作子包?
podspec中可以通过subspec来配置管理子包


image.png

更多关于podspec文件配置有关问题可以查阅官方文档
https://guides.cocoapods.org/syntax/podspec.html#subspec

若有收获,就点个赞吧

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容