欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 使用码云搭建CocoaPods远程私有库

使用码云搭建CocoaPods远程私有库

2025/3/20 8:51:19 来源:https://blog.csdn.net/qq_38779672/article/details/146369568  浏览:    关键词:使用码云搭建CocoaPods远程私有库

一、创建远程私有索引库

用来存放私有框架的详细描述信息.podspec文件

1. 创建私有库

假设码云上创建的私有库为repo-spec

2. 查看本地已存在的索引库

pod repo list

在这里插入图片描述

3. 将远程私有索引库添加到本地

pod repo add [https://gitee.com/jingluoguo/repo-spec.git](https://gitee.com/lsapp_dev/repo-spec.git) 地址改成实际的repo-spec地址

4. 再次查看本地已存在的索引库

此时就可以看到repo-spec

二、创建基础组件库

1. 创建私有库

假设码云上创建的私有库为AKTalkKit

2. 本地创建模版工程

进入所需要的目录,假设为oc_private_pods

pod lib create AKTalkKit

在这里插入图片描述

根据所需选择即可。

3. 按需修改组件代码

修改ReplaceMe文件名及内容即可,记得cd Example后 执行pod install

在这里插入图片描述

4. 将基础组件库上传到gitee

  • 修改AKTalkKit.podspec

在这里插入图片描述

  • 检查podspec 是否正常

pod lib lint --allow-warnings --verbose ,当出现AKTalkKit passed validation,代表验证成功

  • git 提交
git statusgit add .git commit -m ‘AkTalkKit 库上传’# 将本地库与远程库进行关联
git remote add origin [https://gitee.com/jingluoguo/](https://gitee.com/lsapp_dev/repo-spec.git)AkTalkKit[.git](https://gitee.com/lsapp_dev/repo-spec.git) # 此处为实际git地址git push origin mastergit tag '0.1.0' # 要与实际版本一样git push --tags

5. 将podspec提交到私有索引库

pod repo push repo-spec AkTalkKit.podspec

三、注意

1. 可以在podspec中使用s.subspec来进行分库

s.subspec 'Package1' do |p|p.source_file = 'AkTalkKit/Classes/Package1/*'p.dependency 'AFNetworking'
ends.subspec 'lottie' do |l|l.source_file = 'AkTalkKit/Classes/lottie/*'p.dependency 'lottie-ios'
end

2. 修改Kit库后执行二.4和二.5即可

3. OC主程序使用私有框架时,如果私有框架中存在代码生成全局变量,那么需要使用xxx-umbrella.h 文件调用

-umbrella.h 文件通常是 CocoaPods 插件或构建系统自动生成的 Objective-C 模块头文件(也称为 “umbrella header”)。

当私有库包含 Objective-C 代码,并通过 CocoaPods 或 Xcode 的模块系统(如 DEFINES_MODULE = YES)构建时,构建系统会自动生成 _oc-umbrella.h

-umbrella.h 会包含所有标记为 Public 的 Objective-C 头文件,使得其他模块(如 Swift)可以通过单一头文件访问所有公开的 Objective-C 类和方法。

4. 当私有库过大时,可以设置git缓存大小

git config --global http.postBuffer 1073741824
git config --global core.compression 9
git config --global pack.windowMemory 512m

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词