您的位置:首页 > 其它

CocoaPods 快速创建私有类库指南

2016-09-07 18:17 351 查看

0 简介

CocoaPods是iOS最常用的类库管理工具。
解决问题:
a.第三方开源类库
大多数有名的第三方类库都支持CocoaPods,如SDWebImage,AFNetworking,Masonry等。
b.类库依赖层级多
部分第三方库必须依赖其他的类库,一个一个加入是不现实的,采用Pod可以很好的解决这个问题。
c.集合项目公用组件
同一个团队的多个项目工程,可以创建私有Pod类库,集合公用组件。

1 环境:ruby

查看一下ruby是否安装好:

ruby -v

ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-darwin15]

2 安装cocoapods

sudo gem install cocoapods
按照提示一步一步来就可以,等不了多久的。

3 创建Podfile

进入工程目录(可以直接拖拽文件夹到终端),创建Pod文件
touch Podfile

基本文件结构:

platform :ios, '7.0'
target 'XXXPod_Example' do
  pod 'XXXPod', :git => 'ssh://git@xxxxxxx'
end

注:
platform,指名Pod最低支持的系统版本号;
target:引入类库的Target
pod:引入类库的名字和文件地址

pod 的格式自己查吧,一搜一大把。

4 引入第三方工程

以SDWebImage为例:
a.引入类库前先查询是否是CocoaPod支持的第三方类库:

pod search SDWebImage

b.如果成功会打出SDwebImage支持的类库

写入Podfile文件

pod 'SDWebImage','3.8.1'

c 安装Pod类库

pod install

5 引入本地类库

文件就放在工程目录下面的类库。

写入Podfile文件

pod 'XXXPod', :path => 'XXXPath'

XXXPath是以Podfile为参照的相对路径。

6 引入GIT类库

一般用于自己写的公共组件:
写入Podfile文件

  pod 'XXXPod', :git => 'ssh://git@xxxpath', :commit => ‘000000'

这里最好把commit的编号加上。

7 常用Pod命令

pod install
pod update
pod repo update
pod install --verbose --no-repo-update

8 创建一个私有类库

这里一般都是指:静态库(Static Library)

老方法是纯手工(都是体力活,不推荐)
流程:Xcode中创建一个Cocoa Touch Static Library=>创建Podfile文件=>执行pod
install

CocoaPod命令行直接创建(快捷)
例如:XXXPod作为项目名。

pod lib create XXXPod

Would you like to provide a demo application with your library? [ Yes / No ]
yes
Which testing frameworks will you use? [ Specta / Kiwi / None ]
none
Would you like to do view based testing? [ Yes / No ]
No
What is your class prefix?
XX

创建后在XXXPod文件夹下有Assets文件夹和Classes文件夹,分别对应资源文件和.h/.m文件。

打开XXXPod.podspec,配置一下就可以了

Pod::Spec.new do |s|
  s.name             = 'XXXPod'
  s.version          = '0.1.0'
  s.summary          = 'A short description of
XXXPod.'
  s.description      = <<-DESC
TODO: Add long description of the pod here.
                       DESC

  s.homepage         = 'https://github.com/<GITHUB_USERNAME>/XXXPod'
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  s.author           = { 'XXX' => 'XXX@gmail.com' }
  s.source           = { :git => 'https://github.com/<GITHUB_USERNAME>/XXXPod.git', :tag => s.version.to_s }
  # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'

  s.ios.deployment_target = '7.0'

  s.source_files = 'XXXPod/Classes/**/*'

end

其他的都自己填,
  s.source_files = 'XXXPod/Classes/**/*'
这里是重点,指明需要加入的文件的相对路径(参照创建Pod的根目录) ,可以筛选文件*.{h,m}。

创建了过后就可以push到git,开始coding。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: