iOS开发之CocoaPods:插件篇一 CocoaPods Packager

经过我们的不懈努力,CocoaPods的私有库写完了,现在进入集成阶段了,倘若对方工程也在使用CocoaPods,我们也乐意开放源码,那就是开心愉快了,倘若对方工程还是个老古董,我们也不乐意开放源码,这时候就需要我们自行打包了。我们也知道打包又要考虑架构考虑真机和模拟器,很繁琐,CocoaPods Packager就可以来拯救我们。

Packaging Closed Source SDKs
CocoaPods Packager

CocoaPods plugin which allows you to generate a framework or static library from a podspec.

This plugin is for CocoaPods developers, who need to distribute their Pods not only via CocoaPods, but also as frameworks or static libraries for people who do not use Pods.

安装

打开终端,执行下面命令:

$ gem install cocoapods-packager

# 安装完成之后,验证一下,也可用来查看帮助
$ pod package

命令

# Overwrite existing files.
# 是否覆盖已存在的文件
--force 

# Do not mangle symbols of depedendant Pods.
--no-mangle

# Generate embedded frameworks. 
# 生成静态Framework
--embedded

# Generate static libraries.
# 生成静态Library
--library

# Generate dynamic framework. 
# 生成动态Framework
--dynamic

# Bundle identifier for dynamic framework
# 动态Framework Bundle identifier
--bundle-identifier 

# Exclude symbols from dependencies.
# 不包含依赖的符号表,动态库不能包含这个命令
--exclude-deps 

# Build the specified configuration (e.g. Debug). Defaults to Release
# 生成的库是Debug还是Release,默认是Release。--configuration=Debug 
--configuration

# Only include the given subspecs
# 只给指定的子库打包
--subspecs

# The sources to pull dependant pods from (defaults to https://github.com/CocoaPods/Specs.git)
# 存在私有依赖
--spec-sources=private,https://github.com/CocoaPods/Specs.git 

Example

$ cd 工程目录
$ pod package MyLib.podspec --force --embedded --no-mangle --exclude-deps --configuration=DEBUG

这边提供一个懒人方法,把命令写成Shell可执行文件放在目录下,就不用每次都敲命令了:

  1. 新建 package.sh 文件放在跟podspec同目录下,输入:

    #!/bin/bash
    pod package MyLib.podspec --force --embedded --no-mangle --exclude-deps --configuration=DEBUG
    
  2. 给予可执行权限

    $ chmod u+x package.sh
    
  3. 执行

    $ cd 项目目录
    $ ./package.sh
    

作者简介

就职于甜橙金融(翼支付)信息技术部,负责iOS客户端开发

欢迎大家移步本人的小博客 https://kanggggg.github.io/ ,不定时更新

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 22,871评论 0 39
  • iOS CocoaPods组件平滑二进制化方案及详细教程 感谢"fly2never_宝贝别哭"。可以使用cocoa...
    曹俊_413f阅读 12,921评论 6 83
  • 要解除循环依赖,引入包管理技术cocoapods会让我们更有效率。pod不允许组件间有循环依赖,若有pod ins...
    cs_mark阅读 2,228评论 0 1
  • CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。CocoaPo...
    朝洋阅读 26,003评论 3 50
  • 前几天,是周末,爸爸来了,我们全家一起去天润发玩,我我姐姐一到超市门口,就成了跟爸爸说要抓娃娃。 我和姐姐不停的吵...
    cheetah陈阅读 303评论 0 2

友情链接更多精彩内容