首先,你需要在github上有自己的开源库。
现在假定你已经在github上有自己的开源库(如果没有,可以创建一个,然后推到github上)。一共7步,一步一步跟我做,肯定能成功,放心。
现在开始:
一、在github上添加release版本
-
打开github上的仓库主页,点击
releases
,如下图:
-
因为没有创建过release,所以页面应该是像下图一样,然后直接点击
Create a new release
。
-
输入版本号、标题和描述,如下图,然后点击
Publish release
。
-
release添加成功后,如下图:
二、编辑podspec文件
- 打开终端,进入项目根目录,使用命令创建podspec文件,比如:
touch DJExtension.podspec
,创建完后目录结构如图:
- 打开podspec文件,我使用的命令是
atom DJExtension.podspec
,也可以使用vi DJExtension.podspec
。然后将下面的代码拷贝进去。
Pod::Spec.new do |s|
s.name = 'Your Library Name'
s.version = '1.0.0'
s.summary = 'Summary of your library.'
s.homepage = 'Your library path in github'
s.license = 'MIT'
s.platform = :ios
s.swift_version = '4.2'
s.author = {'Your name' => 'your email'}
s.ios.deployment_target = '8.0'
s.source = {:git => 'your library clone url', :tag => s.version}
s.source_files = 'Your library name/**/*.{swift}'
s.requires_arc = true
s.frameworks = 'UIKit', 'AVFoundation', 'Photos'
s.dependency 'SnapKit'
end
你需要做出修改的几处地方,修改完后,任务就快完成了一半了。
s.name
你开源库的名字
s.version
就是你第一步创建的release的版本号,一定要一致!!!!
s.summary
你开源库的summary
s.homepage
你开源库的首页地址
s.license
你开源库使用的协议
s.platform
你开源库的应用平台
s.swift_version
你开源库支持的swift版本
s.author
你的姓名和邮箱
s.ios.deployment_target
你开源库支持的iOS系统版本
s.source
你开源库的地址,即xxx.git。
s.source_files
你开源库的资源文件路径
s.frameworks
你开源库用到的系统框架,多个用逗号隔开
s.dependency
你开源库依赖的三方库
三、提交项目至github
在终端进入项目根目录,然后提交项目到github,包括刚才创建的.podspec文件。如下图:
四、注册trunk
在终端中输入下面的命令,填写你的邮箱、姓名和描述,然后回车。因为需要在接收到的邮件中有操作,所以一定要保证填写准确。
pod trunk register xxxx@gmail.com 'your name' --description='description of yourself'
回车之后,效果如下图:
这是提示你去邮箱中接收到的确认邮件中点击一个链接。
打开邮箱会发现收到CocoaPods发来的一个邮件,如下图:
打开邮件,点击邮件中的链接,如果打开如下页面,则说明这一步成功了。
五、查看自己的trunk信息
在终端中输入命令pod trunk me
进行查看,如果注册成功,则会显示出你的信息,如下图:
六、校验
这一步很重要,用来检查自己开源库中的代码是否有问题。这一关过了,就基本没问题了。
在终端中输入命令pod spec lint
,稍等片刻,校验通过后,如下图:
如果没有一次成功也没有关系,它会提示你哪行代码有问题,如下图所示,按照提示进行修改就好了。加油
七、提交spec到CocoaPods仓库
在终端中输入命令pod trunk push xxxx.podspec --allow-warnings
成功后,如图所示,最下面还有一个恭喜的信息。
至此,你就已经成功让自己的开源库支持CocoaPods方式进行安装了。
八、验证
可以在终端中搜索一下自己的开源库,使用命令pod search DJEmptyView
,稍等片刻,搜到后,如图:
然后可以创建一个新项目,使用下面一串命令把新开源的库成功使用CocoaPods方式安装到项目里。
提示:
如果在操作过程中出现奇奇怪怪的问题,可以尝试一下科学上网。
后记:
我在写这篇教程时,顺便开源了一个库DJEmptyView到github上。
这个库的特点:
- 一行代码添加空页面。
- 支持在空页面上直接进行上拉或下拉刷新。(刷新出数据后,记得调用
dj_hideEmptyView()
把空页面隐藏)
示例代码:
显示:tableView.dj_showEmptyView(DJEmptyView(tipInfo: "暂无相关数据", imageName: "dj_img_no_data"))
隐藏:tableView.dj_hideEmptyView()
多谢支持。
Have fun.
网友评论