一、前期准备
1、注册github账号
2、注册cocoapods账号
发布到cocoapods上你需要有一个pod 的账号,可以终端使用pod trunk me
来查看自己的账号信息,如果没有账号的话需要先注册一下,命令如下:
pod trunk register 8******[email protected] "用户名"
这时候邮箱会收到一封邮件
打开这个地址就可以验证成功了,此时再输入命令
pod trunk me
就可以看到自己的账号信息了
3、创建SSH,并配置电脑和git上的SSH
1、终端输入命令ls -al ~/.ssh
,检查是否有id_rsa.pub或者id_dsa.pub存在,如果不存在,则创建。如下所示,则存在
2、创建SSH,终端输入
ssh-keygen -t rsa -C "8******[email protected]"
连续回车即可,也可能会让你输入密码,密码就是你的开机密码
3、拷贝SSH Key
终端输入pbcopy < ~/.ssh/id_rsa.pub
4、将SSH Key添加到git
点git头像 -- Settings -- SSH and GPG keys -- New SSH key
二、开工
流程:
Github上创建存储库 -- 配置SSH -- 将项目clone到本地 -- 将要托管的SDK放到clone下来的文件里面 -- 创建.podspec文件 -- 将文件上传到git上 -- 编辑.podspec文件 -- 验证.podspec文件合法性 -- 更新到git -- 提交到pods
1、在Github上创建存储库(前提是的有一个Github账号,如果没有就注册一个)
2、将项目clone到本地
git clone https://github.com/Hokingtion/HJQPrivateFramework.git
3、将要托管的SDK放到该项目中
4、创建podspec文件
使用终端cd到工程文件的目录中,在README.md文件所在的位置创建一个podspec 文件
pod spec create HJQPrivateFramework
创建成功后文件夹会多出一个.podspec文件
5、将以上文件push到git上
cd 到.git仓库的同级目录
git add .
git commit -m "注释说明comment log"
git push
git tag 0.0.1
git push --tags
成功后会在终端见到以下内容
到git上可以看到提交的内容
6、编辑.podspec文件,该文件主要是配置一些项目到Pods的参数(重要)
终端cd到podspec文件,执行以下命令,打开podspec文件并编辑
vi HJQPrivateFramework.podspec
podspec文件内容如下:
Pod::Spec.new do |s|
s.name = "HJQPrivatecFramework"
s.version = "0.0.1" #切记要和Git提交的版本号一致
s.summary = "Test for HJQPrivatecFramework."
s.description = "随便写点什么,这里的描述必须比上面的summary长,否则报警告,不行你可以试试" #这里的描述必须比上面的summary长,否则报警告
s.homepage = "https://github.com/Hokingtion" #填写git主页地址
#特别重要,这就是上面提到的新建Git项目的时候,初始化需要选择的LICENSE,没有这个提交会报错
s.license = { :type => "MIT", :file => "LICENSE" }
s.author = { "HJQ" => "[email protected]" }
#平台、系统版本必填,否则会报osx相关的警告,也是提交不了,前面打包Framework的时候提到的重要性
s.platform = :ios, "8.0"
s.source = { :git => "https://github.com/Hokingtion/HJQPrivatecFramework.git", :tag => "0.0.1" }
#特别重要,这里边的.h或者.m文件不能只是配到.framework,否则找不到,报错
s.source_files = "Lib/WebMonitorSDK.framework/Headers/*.{h}"
#特别重要,这里必须配置,否则上传成功,找不到.framework,只有头文件
s.vendored_frameworks = "Lib/WebMonitorSDK.framework"
end
7、编辑完需要验证.podspec文件是否合法
终端执行命令
pod spec lint
这边验证基本上是会出错的,针对报的错一条一条改吧
最后检验通过如下:
8、更新podspec文件到git
git add .
git commit -m "更新podspec文件"
git push
9、创建repo
终端输入pod repo list
,查看当前是否有创建repo,正常是没创建终端输出如下:
则创建repo,终端输入
pod repo add repo名称 私有库git地址
创建后,再次输入
pod repo list
查看,创建的repo已经存在
10、添加.podspec文件到刚才建的私有repo
pod repo push HJQPrivatecFrameworkRepo HJQPrivatecFramework.podspec
到此,已经完全建成Cocoapods 私有库了。
三、使用
1、接下来,到测试工程添加podfile文件
要在podfile 里添加souce
source 'https://github.com/Hokingtion/HJQPrivatecFramework.git'
source 'https://github.com/CocoaPods/Specs.git'
其中
https://github.com/Hokingtion/HJQPrivatecFramework.git 是我自己私有库位置。
https://github.com/CocoaPods/Specs.git 是公共库位置。
注意: 添加私有库时,公共库必须添加source中。否则公有库不能用。
2、配置好podfile文件后,在终端pod install
3、运行测试工程,点击APP上”启动SDK“按钮,Xcode输出:启动SDK
成功了