zoukankan      html  css  js  c++  java
  • CocoaPods介绍与使用(转)

    一.介绍 
    (1) CocoaPods是一个用来帮助我们管理第三方依赖库的工具。它可以解决库与库之间的依赖关系,下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我们的工程链接起来,供我们开发使用。  
    (2) 使用CocoaPods的目的是让我们能自动化的,集中的,直观的管理第三方开源库。  
    (3) CocoaPods是用Ruby实现的,想要使用它首先需要有Ruby的环境。  
    (4) CocoaPods是以Ruby gem包的形式被安装。  
    (5) CocoaPods的原理是将所有的依赖库都放倒另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移动到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。


    二.使用 
    1.CocoaPods的安装 
    需要用到ruby,Mac系统自带ruby,但如果不是最新的系统,最好更新一下。 
    ruby的软件源rubygems.org被墙了,所以先换一下源,命令行下依次执行3条命令 

    $ gem sources –remove https://rubygems.org/
    $ gem sources -add htts://gems.ruby-china.com/
    $ gem sources -l

    然后升级gem 

    $ sudo gem update -–system

    完了就开始安装CocoaPods 

    $ sudo gem install cocoapodspod setup

    出现Setting up CocoaPods master repo,半天没有任何反应。原因无他,因为那堵墙阻挡了cocoapods.org。。。 
    gitcafe和oschina都是国内的服务器,可以用它们CocoaPods索引库的镜像: 

    $ pod repo removemaster pod repo add master https://gitcafe.com/akuandev/Specs.git 
    $ pod repo update 

    如果想用oschina的镜像也可以把第二条命令 换成 http://git.oschina.net/akuandev/Specs.git 即可

    第二条命令执行的时候会比较耗时,这个时候要去把整个specs仓库clone一下,下载到 ~/.cocoapods里; 
    cd 到该目录里,用du -sh *命令来查看文件大小,每隔一会看看,最终大小是190多M。


    2.CocoaPods的使用

    (1) 在终端shell中cd 来到你要管理的项目,运行:pod install 你的工程就多了个xworkspace文件夹,以后用这个打开工程 
    (2) 添加第三方库 

    搜索一个开源库  podsearchAFNetworkingPodfile vim Podfile 
    内容按这个格式来 

    platform :ios,’6.0’ 
    pod ‘RegexKitLite’, ‘~> 4.0’ 
    pod ‘ASIHTTPRequest’, ‘~> 1.8.2’ 
    pod ‘SDWebImage’, ‘~> 3.7.1’ 
    pod ‘FMDB’, ‘~> 2.3

    3.CocoaPods的使用心得

    (1) 最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动 原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,命令如下: 

     $ pod install –verbose –no-repo-update 
     $ pod update –verbose –no-repo-update 

    podinstalPodfile pod update会更新所有的类库,获取最新版本的类库。每次用$ pod update就行。

    (2) 安装一个xcode插件管理工具  http://alcatraz.io,执行curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh 完了打开xcode->window->package manger 搜cocoapods安装,方便操作。

    (3) 工程在模拟器上编译报错,不支持i386,Cocoapods确实还不支持64位模拟器,解决办法: 
    http://stackoverflow.com/questions/19213782/undefined-symbols-for-architecture-arm64 
    其实就2条,1.build active architecture only 在debug的时候设置成YES,不要在release的时候用模拟器 2.other linker flags 加一个 $(inherited)

    (4) 用到svn,git多人协作的话,Pods/这个文件夹不要上传,…/Pods/Pods.xcodeproj …Pods/Target Support Files/这些每次编译都会改动从而引起合并代码的时候冲突

    更多坑可以看wiki,例如  https://github.com/CocoaPods/CocoaPods/issues/2190 
    其他坑各位可以补充。。。

  • 相关阅读:
    Linux文件的复制、删除和移动命令
    Linux文件夹文件创建、删除
    Python 常用代码片段
    Chrome 插件 PageSpeed Insights
    VI打开和编辑多个文件的命令
    Linux case 及 函数位置参数
    C#编程利器之三:接口(Interface)
    C#编程利器之四:委托与事件(Delegate and event)
    解读设计模式简单工厂模式(SimpleFactory Pattern),你要什么我就给你什么
    C#编程利器之五:集合对象(Collections)
  • 原文地址:https://www.cnblogs.com/jiuyi/p/10109049.html
Copyright © 2011-2022 走看看