美文网首页
Pod库制作

Pod库制作

作者: 浮生随笔 | 来源:发表于2017-07-27 09:31 被阅读23次

    CocoaPods是iOS开发用于管理第三方库的 不可获取的 工具,在使用别人库的同时,我们有时候也想做一个自己的开源库,所以看到这篇文章,你就应该准备入门了。

    知识储备:

    一、Git使用

    Git命令:

    Git常用命令传送门:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html熟悉下简单的Git操作。

    Git系统学习传送门:

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

    二、cocoapods安装和使用

    CocoaPods官网:http://cocoapods.org/

    CocoaPods安装和使用:http://blog.csdn.net/sanjunsheng/article/details/28398455

    Podfile文件编辑:http://blog.csdn.net/xdrt81y/article/details/30631595

    制作自己的Pod开源库

    一、开源库制作基本步骤:

    1、首先,申请一个 Github、或者Coding.net 账号

    2、GitHub或者coding上 创建一个仓库

    3、把仓库克隆到本地 (让本地文件 和 仓库建立连接)编辑仓库内容

    4、仓库内容整理好之后 创建 podspec文件 编辑文件 (这一步是关键)

    5、验证 podspec文件格式是否正确

    6、提交仓库到 cocoapod

    7、安装pod仓库

    二、For Example

    Ok,下面开始详细讲解:

    1、申请账号

    GitHub :国际化的 比较大的开源平台,个人非常喜欢。Github的目的是开源交流,如果普通账号想要创建私有库,是需要花钱的,怎奈何公司网络太慢,我只是闲时才会去看看。

    Coding.net: 中国的GitHub,支持国货。这个平台是可以免费享有 创建私有库 权限的,推荐!!!!~~~~

    2、在你所创建的平台上 创建一个公有的 开源仓库 (这里以Coding平台的podTestLibrary 为例)

    需要注意的是三个点:

    1、仓库名字 这个根据你项目 后者开源库命名自定义就可以了。

    2、项目是否开源 :开源库 项目肯定是要开源的,毫无疑问。

    3、License:通行证,最好是在平台上创建,用Git 终端 工具创建仓库默认都是不带 MIT License文件的。这个文件表明,你允许别人访问你的开运库,就相当于是一个权限声明。

    3、把平台上创建的仓库 克隆到本地

    $git clone podTestLibary

    克隆到本地以后,就把网络仓库和本地仓库创建联系了。接下来,你就创建 包含你要分享的开源库就好了。

    $ pod repo add podTestLibraryhttps://git.coding.net/Kael_zzs/podTestLibrary.git

    这个是Pod的方式 将仓库克隆到本地 的pod repo库中。

    另:创建项目的时候,pod有个模板命令:

    pod libcreate[your_project_name]

    4、创建 podSpec文件。

    # Be sure to run `pod lib lint QGGImagePicker.podspec' to ensure this is a

    # valid spec before submitting.

    #

    # Any lines starting with a # are optional, but their use is encouraged

    # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html

    #

    Pod::Spec.new do |s|

    s.name             = "QGGImagePicker"

    s.version          = "0.0.1"

    s.summary          = "QGGImagePicker."

    # This description is used to generate tags and improve search results.

    #   * Think: What does it do? Why did you write it? What is the focus?

    #   * Try to keep it short, snappy and to the point.

    #   * Write the description between the DESC delimiters below.

    #   * Finally, don't worry about the indent, CocoaPods strips it!

    s.description      = <<-DESC

    A ImagePicker Like WeChat's ImagePicker

    DESC

    s.homepage         = "https://github.com/infiniteQin/QGGImagePicker.git"

    # s.screenshots     = "www.example.com/screenshots_1", "www.example.com/screenshots_2"

    s.license          = 'MIT'

    s.author           = { "changqin" => "changqin@ixiaopu.com" }

    s.source           = { :git => "https://github.com/infiniteQin/QGGImagePicker.git", :tag => s.version.to_s }

    # s.social_media_url = 'https://twitter.com/'

    s.platform     = :ios, '7.0'

    s.requires_arc = true

    s.source_files = 'Pod/Classes/**/*','Pod/Classes/**/**/*'

    #s.resource_bundles = {

    #  'QGGImagePicker' => ['Pod/Assets/*.png']

    #}

    #s.resources = "Pod/*.xcassets"

    # s.public_header_files = 'Pod/Classes/**/*.h'

    s.frameworks = "UIKit", "AssetsLibrary"

    s.dependency 'Masonry', '~> 0.6.3'

    end

    s.name="FYAlbum"开源库名称

    s.version="1.0.1"开源库版本(这个版本很关键,最好跟开源库的稳定relese版本的tag 保持一致)

    s.license="MIT"通行证

    s.summary="Fast encryption string used on iOS, which implement by Objective-C."简介

    s.homepage="https://github.com/ifgyong/FYAlbum"开源库主页

    s.author= {"fgyong"=>"fgyong@yeah.net"}    作者信息

    s.source= { :git =>"https://github.com/ifgyong/FYAlbum.git", :tag => s.version}   网络仓库地址

    s.requires_arc=true是否是ARC

    s.source_files="FYAlbum/*/*"资源文件路径

    s.platform= :ios,'8.0'支持平台

    s.framework='Foundation','UIKit'依赖的framework

    s.dependency'Masonry','~> 0.6.3' 依赖的第三方库

    搞定这些参数,基本上就Ok了,然后就是git提交的问题了

    git add -A && git commit -m "Release 0.1.0"

    git tag '0.1.1'   注:s.version要和这里对应

    git remote add origin git@github.com:sapphirezzz/ZInAppPurchase.git

    git push --tags

    git push origin master

    5、验证 podSpec文件 格式是否正确。

    $pod lib lint ***.podSpec  --allow-warnings --verbose

    --allow-warnings:允许有警告 。即使有警告⚠️, 也能验证通过

    --verbose:允许有编译错误。即使有编译错误也能通过验证

    验证通过就可以上传了

    6、提交仓库到Pod服务器。

    最期待的一部操作:

    $pod trunk push podTestLibary.podspec --allow-warnings

    这一步耗时较多,耐心等待吧~

    私有库制作:

    1、GitHub或者coding上 创建一个仓库

    这里需要创建的是一个私有仓库

    2、把仓库克隆到本地 (让本地文件 和 仓库建立连接)编辑仓库内容

    3、仓库内容整理好之后 创建 podspec文件 编辑文件 (这一步是关键)

    4、验证 podspec文件格式是否正确

    5、提交仓库到 cocoapod

    6、制作索引文件  分发读写权限

    pod ipc spec DataInterface.podspec >> DataInterface.podspec.json

    7、安装pod仓库

    私有库使用:

    首先,安装cocoaPods;

    然后,获取作者的授权

    接着,获取作者的 索引文件(仓库信息的json文件)

    放到 ~/.cocoaPods 内repo 列表中

    最后,按照正常的步骤导入项目就行了~

    相关文章

      网友评论

          本文标题:Pod库制作

          本文链接:https://www.haomeiwen.com/subject/rrompttx.html