iOS cocoaPods 创建私有库时podSpec的书写
我们在进行iOS开发时早就习惯了使用cocoaPods
来管理和使用第三方库,但是有的时候我们想自己创建类库供自己或者他人使用,这个时候podSpec
的书写就变得尤为关键。这里主要是描述 podSpec
如何书写,至于创建私有库的具体步骤以及踩过的坑你可以参考文章结尾的链接,非常详细。podSpec
的创建方法:
- 用终端命令cd到本地项目目录并执行如下命令:
$ pod spec create VitamioSDK-iOS
这时候本地就生成一个VitamioSDK-iOS.podspec
文件,或者去gitHub上拷贝一个podspec文件到自己项目目录下,改变下名字即可。
- 用编辑器打开.podspec文件
Pod::Spec.new do |s|
s.name = "VitamioSDK-iOS"
s.version = "1.0.1"
s.summary = "Vitamio SDK SDK for iOS"
s.homepage = "https://github.com/chenXming/VitamioSDK-iOS.git"
s.license = "MIT"
s.author = { "chenxiaoming" => "chenxiaoming@asean-go.com" }
s.ios.deployment_target = "7.0"
s.source = {:git =>"https://github.com/chenXming/VitamioSDK-iOS.git", :tag =>'1.0.1'}
s.source_files = "Vitamio", "Vitamio/include/Vitamio/*.h"
s.public_header_files = "Vitamio/include/Vitamio/*.h"
s.vendored_libraries = "Vitamio/*.a"
s.frameworks = "Foundation","UIKit","AVFoundation","AudioToolbox","CoreGraphics","CoreMedia","CoreVideo","MediaPlayer","OpenGLES","QuartzCore"
s.libraries = "bz2", "z","stdc++","iconv"
s.pod_target_xcconfig = { 'OTHER_LDFLAGS' => '-lObjC' }
s.requires_arc = true
常用字段说明:
-
s.name 创建的pod私有库的名称
-
s.version 版本
-
s.summary 库的简单描述
-
s.homepage 库的地址 填写私有库在GitHub上的地址即可
-
s.license 专利声明,一般填写
MIT
即可 -
s.author 作者信息 填写方式
{ "chenxiaoming" => "chenxiaoming@asean-go.com" }
前面名称后面邮箱 这个用户名邮箱最好是你注册trunk cocoapods 过的。 -
s.ios.deployment_target 支持的平台和版本
-
s.source 源码地址 注意要提前给代码打上tag
-
s.source_files 文件地址 注意是从你的项目目录开始的 文件
*.{h,m}
若果只有.h文件可以这样写*.h
. -
s.public_header_files 项目的公共头文件
-
s.vendored_libraries 你的
.a
文件 -
s.frameworks 依赖的系统
frameworks
-
s.libraries 依赖的
libraries
-
s.pod_target_xcconfig xcode 里面
Build Settings
->Other Linker Flags
设置-ObjC
如果这里面还是没有你要的参数可以去cococPods的官方地址查找字段:cocoaPods官网
我的podSpec 地址:Github -
具体的创建私有库的步骤看这里:
http://www.cnblogs.com/XYQ-208910/p/6214066.html
http://www.cocoachina.com/ios/20160301/15459.html