CocoaPods管理本地库简单步骤

摘要:
1.首先,我有一个工具类(您所谓的本地库),包括MyTool。h和MyTool。m、 然后在Terminal&Amp中输入命令$gitadd,您已经将工具类提交到git存储库;输入后的命令将自动生成MyTool.podspec文件)。同样,在终端中输入命令$podspeccreateMyTool,然后按enter键。

  这个纯属好玩!!!注意:您的电脑要先安装CocoaPods

  比如你自己写了一个工具类(可视为第三方库啦),前提:你想利用CocoaPods来管理这个类,而你又不想很麻烦的把你写的类上传到github上,

这时候就可以利用CocoaPods来管理本地库,具体步骤如下:

  1、首先我有一个工具类(也就是你所谓的本地库)包括MyTool.h和MyTool.m两个文件,然后我创建一个目录~/Documents/LocalParty/Test/

在终端(Terminal)中进入该目录下,为了让该目录成为一个git repository,输入命令 $ git init回车,这时候该目录就是一个git仓库了,

然后把你的工具类copy到该目录下(~/Documents/LocalParty/Test/),接着在Terminal中输入命令 $ git add . && git commit -m "Add new SDK"回车,

你已经把你的工具类提交到git仓库了。

  2、创建podspec文件。命名为MyTool(命名随意,输入之后的命令会自动生成MyTool.podspec文件),同样在Terminal中输入命令 $ pod spec create MyTool 回车,稍等一会后该目录下(~/Documents/LocalParty/Test/)就会出现MyTool.podspec文件。

  3、编辑MyTool.podspec文件。这时候Terminal还是处于~/Documents/LocalParty/Test/目录下,我们用vim编辑器来编辑MyTool.podspec文件;

输入命令$ vim MyTool.podspec回车,你会看到很多很多的内容,如果有兴趣就研究下,这些都是配置,有些用得到有些用不到。现在我们把里面的内容全部删除,

vim命令不懂的网上搜吧(非输入模式下光标在第一行输入10000再按dd就删除所有内容了),内容全部删除后,添加以下内容,

Pod::Spec.new do |s|

  s.name         = "MyTool"
  s.version      = "0.0.1"
  s.summary      = "A short description of MyTool."
  s.homepage     = 'http://weibo.com/xuym1992/'
  s.license      = 'MIT'
  s.author       = { 'xuym' => 'http://weibo.com/xuym1992/' }
  s.platform     = :ios
  s.source       = { :git => "~/Documents/LocalParty/Test" }
  s.source_files  = '**/*.{h,m}'
end

  这里有必要解释一下,s.name这个是库的名字,之后在Podfile中要用到这个名字,或者pod search命令就是根据s.names.summary来搜索你的库的,我们这里因为是本地的,不作严格要求;s.homepages.author这两个随便写吧,反正是本地库,我这里写的是我微博地址;s.source是源代码的目录地址,我们这里是MyTool.h和MyTool.m的地址;对于这些配置参数,不懂的请参考点击这里。最后保存退出编辑。

  4、配置Podfile文件。新建一个空project,这里我的新工程目录为~/Desktop/demo/StrenchImage,在Terminal中切换目录到工程目录下,该目录下没有Podfile文件,没事,直接输入命令 $ vim Podfile回车,键入以下内容:

platform :ios
pod 'MyTool',:local => '~/Documents/LocalParty/Test'

  pod 'MyTool',:local => '~/Documents/LocalParty/Test',这里的local表明从本地的git仓库里获取代码。接着保存退出。

最后输入命令 $ pod install回车,稍等一会Terminal就可能出现如下提示:

MichaeldeMac-mini:Animate md004$ pod install
Analyzing dependencies
Fetching podspec for `MyTool` from `~/Documents/LocalParty/Test`
Downloading dependencies
Installing MyTool (0.0.1)
Generating Pods project
Integrating client project

[!] From now on use `Animate.xcworkspace`.
[deprecated] I18n.enforce_available_locales will default to true in the future. If you really want to skip validation of your locale you can set I18n.enforce_available_locales = false to avoid this message.

[!] The `:local` option of the Podfile has been renamed to `:path` and is deprecated.
MichaeldeMac-mini:Animate md004$ 

  看到这些就说明成功了。

  这时候打开Animate.xcworkspace文件,编译则可以顺利通过。

    本文参考链接:http://www.iwangke.me/2013/04/18/advanced-cocoapods/

          http://ishalou.com/blog/2012/10/16/how-to-create-a-cocoapods-spec-file/

          http://www.cnblogs.com/zhanglong0426/archive/2010/10/07/1845268.html

最后附几张所有Terminal的截图,更清晰的了解了解输入命令的过程:

图1:(~/Documents/LocalParty/Test/)下

CocoaPods管理本地库简单步骤第1张

图2:(~/Desktop/demo/StrenchImage)下

CocoaPods管理本地库简单步骤第2张

图3:(~/Desktop/demo/StrenchImage)下

CocoaPods管理本地库简单步骤第3张

祝您愉快开心 ^_^

免责声明:文章转载自《CocoaPods管理本地库简单步骤》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Netty中的这些知识点,你需要知道!JS获取网页高度和宽度下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux下计划任务以及crontab权限问题

在Linux工作环境下,我们有时可能会需要在未来某个时间执行某个命令或脚本,但是我们又不可能定个闹钟,然后到点了再去执行吧,这多麻烦。还好我们的Linux系统这么强大,提供了任务计划这个功能,我们就不需要守着点去执行相应的命令或脚本了。当我们定义好了任务计划之后,就可以去做别的事情了,等到了我们自己定义的那个时间点,你所定义的任务操作系统会自动执行,这就被...

vue cli3.0 打包静态文件目录的配置

vue cli3.0默认打包生成的文件和cli2.0同样是生成在dist目录中,但静态文件如css、js、img并未像cli2.0一样放在static文件夹下,而是和index.html处在同一目录中,显得十分散乱 要使打包后的文件与cli2.0的相同,需要修改vue.config.js的几项配置变量: module.exports = { publi...

流量取证-流量中提取文件

以前整理的一些东西,拿出来做备忘 PCAP 报文就是抓取实际在网络中传输的图片,视频等数据,然后以PCAP 格式存储形成的文件。工作中对离线的数据包进行回溯分析,有时会遇到将 PCAP 中的码流还原成相应的图片、视频、邮件等原有格式的需求。 从流量中取证文件大部分情况下是为了提取流量中的可执行程序。 1、 tcpxtract 安装: apt-get ins...

ftp命令

ftp命令是标准的文件传输协议的用户接口。ftp是在TCP/IP网络上的计算机之间传输文件的简单有效的方法。它允许用户传输ASCII文件和二进制文件。 在ftp会话过程中,用户可以通过使用ftp客户程序连接到另一台计算机上。从此,用户可以在目录中上下移动、列出目录内容、把文件从远程机拷贝到本地机上、把文件从本地机传输到远程系统中。需要注意的是,如果用户没有...

python pip升级失败

接上篇,使用命令:python -m pip install --upgrade pip 发现pip升级时报错,无法升级 解决方法: 1、使用如下命令,查看具体失败原因: pip install --upgrade pip –vvv 2、果然在最后有提示,原来对我的用户文件夹没有访问权限: 3、查看该文件夹的所有者为system,更改所有者为当前用户 4...

web 大文件分片上传处理

这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数 下面直接贴代码吧,一些难懂的我大部分都加上注释了: 上传文件实体类: 看得出来,实体类中已经有很多我们需要的功能了,还有实用的属性。如MD5秒传的信息。 首先是文件数据接收逻辑,负责接收控件上传的文件块数据,然后写到服务器的文件中...