zoukankan      html  css  js  c++  java
  • Cocoapods包管理工具

    安装Cocoapods

    $sudo gem update --system
    
    //查看当前的源
    $gem sources -l
    
    $gem sources --remove https://rubygems.org/
    
    $gem sources -a https://gems.ruby-china.org/
    
    $sudo gem install cocoapods
    //或者指定安装路径
    //$sudo gem install -n /usr/local/bin cocoapods
    
    $pod setup --verbose
    

    安装依赖库

    //cd 到项目目录下
    $pod init
    
    $vi Podfile
    
    //修改生成的Podfile文件,添加所需要的依赖库
    //例:pod 'Alamofire', '~> 4.4.0'
    //保存
    
    $pod install
    

    在swift的项目中,使用动态链接库

    use_frameworks!
    

    库(library)和框架(frameworkd)和cocoaPod之间的区别

    Cocoapod或者简写为”pod”是一种惯常的叫法,用来表示使用Cocoapods工具添加库或者框架到你的应用程序中。

    iOS 8引入了动态框架,这就允许了代码、图片和其他的东西(assets)可以被一起打包。在iOS 8之前,CocoaPods被作为静态库来创建,就是很”臃肿的”二进制文件。这意味着它包含了一些代码说明设置(例如i386 for the simulator, armv7 for devices等),但是它们不允许包含任何资源,例如图片或资产。

    另外一个重要的区别是动态框架有命名空间类,而静态库没有。所以,如果单个项目中不同的静态库里分别有一个叫做MyTestClasses的类,那么Xcode可能不能成功创建工程因为它会因重复的标识而导致连接失败。然而,Xcode很乐意在一个工程里的不同框架下分别有一个名字相同的类。

    为什么这很重要?不像OC,标准的Swift运行时库(runtime libraries)没有包含在iOS中!这意味着你的框架必须包含了必要的Swift运行时库。因此,用Swift语言写的pods必须以动态框架形式创建。如果苹果允许Swift静态库,那么使用同一个标准运行时依赖的不同库中将会产生重复符号。

    幸运的是,CocoaPods为你做了这些事。它甚至能做到一次性包含需要的依赖关系。你所要做的就是在使用swift cocoaPods时记得在Podfile中包含use_frameworks! ,那就没问题了。

  • 相关阅读:
    go语言的垮平台编译
    vscode使用技巧
    集合
    泛型
    异常
    Java垃圾回收机制
    java学习笔记9.20
    java变量类型
    目前的学习计划
    离第一篇博客三天
  • 原文地址:https://www.cnblogs.com/horo/p/6720548.html
Copyright © 2011-2022 走看看