欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

cocoapods创建自己的共有库

程序员文章站 2024-03-20 22:40:46
...

一、前期准备:

1、安装cocoapods;(注:http://www.jianshu.com/p/b64b4fd08d3c,这是cocoapods安装教程,网上有很多,就不写了,大家需要的自取吧)

2、安装source tree或者自己在终端搭建git环境,建议使用source tree工具,非常方便;当然了,使用终端的话,体验上更爽;

3、github上注册一个账号。

二、github上项目准备:

通过sourcetree建立一个新仓库,置入你想开源的项目,提交到github上;或者现在github上创建项目,然后拉取到本地,在导入项目,方式可以任意选择;


三、共有库创建

1、配置pod spec文件

podspec文件是用来描述框架的具体信息的,比如框架的作者,版本,下载地址等等,pod install的时候就是根据这个文件中的下载地址去clone代码

a、使用终端命令创建podspec文件

打开终端,cd到项目根目录下,运行该命令

pod spec create TTLockSDK

b、编写podspec文件

Pod::Spec.new do |s|
s.name         = "TTLockSDK"
s.version      = "2.6.5"
s.summary      = "TTLock SDK for iOS."
s.homepage     = "https://github.com/ttlock/ios_sdk_demo"
s.license      = { :type => "MIT", :file => "LICENSE" }
s.author             = { "ttlock" => "aaa@qq.com" }
s.platform     = :ios, "7.0"
s.source       = { :git => "https://github.com/ttlock/ios_sdk_demo.git", :tag => "#{s.version}" }
s.source_files  = "TTLockSDK/*.h"
s.preserve_paths = "TTLockSDK/*.a"
  s.vendored_libraries = "TTLockSDK/*.a"
s.framework  = "CoreBluetooth"
s.library   = "z"
s.requires_arc = true
end

接下来讲解一下每行代码的含义
s.name:名称,pod search 搜索的关键词,注意这里一定要和.podspec的名称一样,否则报错
s.version:版本号
s.ios.deployment_target:支持的pod最低版本
s.summary: 简介
s.homepage:项目主页地址
s.license:许可证
s.author:作者
s.social_media_url:社交网址,这里我写的微博默认是Twitter,如果你写Twitter的话,你的podspec发布成功后会@你
s.source:项目的地址
s.source_files:需要包含的源文件
s.resources: 资源文件
s.requires_arc: 是否支持ARC
s.dependency:依赖库,不能依赖未发布的库

2、创建LICENSE文件,执行下面指令:
vi LICENSE  (注:可以直接去百度一个复制过来,根据需要自己修改一下)
 创建并保存;

给开源项目打上标签:

a、使用sourcetree,点击标签,就可以给项目打标签了,打完标签之后要提交并推送到github,具体见图:

cocoapods创建自己的共有库

cocoapods创建自己的共有库cocoapods创建自己的共有库

cocoapods创建自己的共有库cocoapods创建自己的共有库

b、使用tag命令

打标签

git tag -a 2.6.5 -m "Release version 2.6.5"

提交标签的到github

git push origin --tags

删除标签的命令

git tag -d 2.6.4

删除远端服务器的标签

git push origin :refs/tags/2.6.5

完成删除步骤之后,就可以去github上看看你的项目,是否已经有release的tag包了,没毛病的话应该是有的,没有的话那应该就是操作有问题了;


完成上述步骤之后在终端执行下面命令,验证podspec文件:

pod spec lint TTLockSDK.podspec

成功后会输出TTLockSDK.podspec passed validation,关于失败的情况,会在下一篇博客中讲述,不然这篇博客就太长了。


3、发布注册trunk
a、注册trunk,上传cocoa pods共有库需要注册trunk账号,先在终端输入以下代码,检测是否注册过账号:
pod trunk me
以下情况说明你已经注册过了,无需再次注册
cocoapods创建自己的共有库
其他情况就是没注册啦,具体提示好像是需要一个session,在终端输入以下指令:
pod trunk register aaa@qq.com xuxiang(即:pod trunk register 邮箱 名称)
自己领悟了哈,指令执行之后会发送邮件到邮箱,进入邮箱去验证一下就可以使用了,你可以再终端检测一下是否注册成功

b、推送podspec文件到共有库
完成之前的的验证podspec后,就可以执行这个命令:
pod trunk push TTLockSDK.podspec
大约等候两分钟,成功会如下返回(注:失败情况见下一篇博客):
cocoapods创建自己的共有库
cocoapods创建自己的共有库
cocoapods创建自己的共有库
cocoapods创建自己的共有库
(ps:网上找的图,我的库已经发布过了,没截图保留)


4、成功之后直接去pod search会发现还是找不到这个库,在终端执行以下命令,带你开启新的生活,按步执行:

rm ~/Library/Caches/CocoaPods/search_index.json

pod setup

完了之后就去pod search吧,你会发现奇迹!!!