在CocoaPods上制作自己的库

CocoaPads作为管理第三方库的神器,有时候自己写的好的库也希望,放在上面去,不敢说给别人用,让别人喜欢,最起码自己熟悉,下次自己倒进来就能用,也有也有人喜欢把那些库打成.a的包,这样也可以。只要你喜欢随便喽。我是觉得打包成.a不太方便版本管理,不太方便升级维护。
网上有很多博客讲解怎么制作库的,每篇文章各有侧重点,自己制作一下就知道各种各样的坑。记录下这些坑。

一 制作第一个CocoaPods库

原理:CocoaPods大概相当一个服务器,管理各种ios和Swift的第三方库的服务器。使用pod导入别人的代码像AFNetworking,就是去服务器上下载。

  1. 假设你的项目是放在github上面托管的,先给项目打上一个tag,其实就是要制作的库的代码的稳定的运行版本,这个版本号,就是告诉别人在用pod导入的时候倒入那个版本。会在.podspec 中配置。

  2. 创建配置文件-.podspec 一般在和.git 同级目录下创建配置文件,下面的库名就是到时候发布到Cocoapod服务器上的名字,使用pod search 能找得到的。这个名字我曾经试图修改过,没成功,所以填写要慎重。

pod spec create “库名”

3.创建好之后,目录下会多一个 库名.podspec的配置文件

Pod::Spec.new do |s|
s.name = “库名”
s.version = “1.0.0” 版本
s.summary = “空视图处理”
s.description = “A UIView category for showing empty datasets whenever the view has no content to display.” 库的介绍
s.homepage = “https://github.com/lupeihong/Test” 库的远程地址
s.license = { :type => “MIT”, :file => “LICENSE” }
s.author = { “lupeihong” => “123456@qq.com” }
作者的名字,库成功发布后,cocoapod官方会发邮件给你
s.platform = :ios, “6.0” 库运行的平台
# When using multiple platforms
# s.ios.deployment_target = “5.0”
不能乱配,支持这个平台,就别写这个,否则检测配置文件是会报错的。
s.source = { :git => “https://github.com/lupeihong/Test.git“, :tag => “v#{s.version}” } 源代码远程仓库地址
s.source_files = “Classes”, “Test/UIView+Test.{h,m}”
库文件目录,将来这个目录下的文件会被作为第三方库文件导入工程,bundle文件不导入,配置了也白搭。
资源文件要通过这个属性配置。注意路径不能写错了。
s.framework = “UIKit” 运行这个库依赖的系统库
# s.frameworks = “SomeFramework”, “AnotherFramework”
# s.library = “iconv”
# s.libraries = “iconv”, “xml2”
s.requires_arc = true
# s.xcconfig = { “HEADER_SEARCH_PATHS” => “$(SDKROOT)/usr/include/libxml2” }
# s.dependency “JSONKit”, “~> 1.4”
依赖的其它的第三方库,如果填写这个,再导入你制作的库的同时会导入依赖的库。
end

  1. 检测配置的文件是否有错

pod spec lint MDPodSpec.podspec –allow-warnings

我遇到的问题有
1. 配置默认swift的版本:echo "2.3" > .swift-version.
2. 依赖第三方库不支持现在所配置运行的系统。如依赖第三方库本不支持ox10.7 你的库依赖第三方库,你配这个就有问题了。
3. 若是代码中有警告在监测是加上 –allow-warnings 就行了。
4. 报错[-Werror,-Wnon-modular-include-in-framework-module] 在检测命令后面加上–use-libraries 即可

5.监测通过就后,告诉你:’库名’.podspec passed validation. 接着就可以把库发布到,CocoaPods的服务器上

pod trunk push ‘库名’.podspec

若代码中有警告需在后面加上 –allow-warnings
6. 发布成功后
成功的标志

二 更新CocoaPods中的版本

  1. 更新第一步先给远程仓库的代码打tag
  2. 修改.podspec 的配置文件
  3. 检测配置文件(上面第4步)
  4. 发布盖版本到Cocoapod服务器(上面第5步)

三 pod库中添加资源文件

这个在配置添配置文件中提到,一定要在s.resources 这个属性中配置,重要的事情再说一遍,也可参考http://www.tuicool.com/articles/73aUfmq

参考文章
- http://blog.csdn.net/bluefish89/article/details/48030941
- http://www.tuicool.com/articles/73aUfmq
- http://www.jianshu.com/p/4c08be08731e

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值