多工程联编的Pods如何设置

(2014-07-17 13:57:10)

标签:

联编

多工程

分类: iOS开发
如今,CocoaPods使用越来越多,几乎每个项目都会使用到。有时候我们的项目可能是有几个模块组成的,每个模块都可以作为一个单独的工程,然后所有的工程都供主工程使用,这就是多工程联编,如何利用pods的Podfile来实现这个功能,下面就为大家提供这种情况下Podfile的写法:

workspace 'Myworkspace'

xcodeproj 'MyApp/MyApp.xcodeproj'
xcodeproj 'MySDK1/MySDK1.xcodeproj'
xcodeproj 'MySDK2/MySDK2.xcodeproj'

target :MyApp do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
pod 'FlurrySDK', '~> 5.0.0'
xcodeproj 'MyApp/MyApp.xcodeproj'
end

target :MySDK1 do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
pod 'FlurrySDK', '~> 5.0.0'
xcodeproj 'MySDK1/MySDK1.xcodeproj'
end

target :MySDK2 do
platform :ios, '6.0'
pod 'AFNetworking', '~> 2.1.0'
pod 'SDWebImage', '~> 3.4'
xcodeproj 'MySDK2/MySDK2.xcodeproj'
end

1. 指定工作区文件名字
2. 声明需要包含进来的所有工程的工程文件相对路径
3. 指明该工程内哪个target需要使用pods功能。一个工程可能有多个target,并不是所有的target都需要pods的第三方库,所以根据需要选择。
4. 指定iOS的版本,需要导入的第三方库(此处又有多种写法,在此不作详述,大家可以到此处去看,比较详细:http://guides.cocoapods.org/syntax/podfile.html#xcodeproj)

这样做的前提是,在一个目录下,把需要的工程都建好,然后在各个工程同级目录建Podfile,最后进入Podfile的目录,执行pod install, pods便会帮我们生成Myworkspace文件,用xcode打开Myworkspace文件,所有的工程都已经被导入,设置好项目间的引用关系,就可以开始开发了。

目录结构:
MyApp
    Myworkspace.xcworkspace
    MyApp
    MySDK1
    MySDK2
    Pods
    Podfile
    Podfile.lock
   

多工程联编的Pods如何设置的更多相关文章

  1. xcode 环境,多工程联编设置【转】

    http://blog.csdn.net/vienna_zj/article/details/8467522 一.xcode4中的环境变量 $(BUILT_PRODUCTS_DIR) build成功后 ...

  2. 使用Pods和自定义静态库实现多工程联编

    使用Pods和自定义静态库实现多工程联编 字数607 阅读112 评论0 喜欢0 近来随着公司项目开发的深入,项目的规范也就越来越高了,为了更加方便的管理自定义静态库与pods之间的联系,好好的研究了 ...

  3. xcode4的workspace里各lib工程与app工程联编之runscript简介

    copy from:http://www.cnblogs.com/xiaouisme/archive/2012/02/06/2339470.html 本文讲解怎么在xcode4的workspace里配 ...

  4. 多工程联编,cocopods的使用

    最近在使用coco2d-x, 想要使用 cocopods,发现我的目录结构如下图 发现我有三个工程文件,  那么 就需要多工程联编使用cocopods, workspace 'xcworkspace' ...

  5. xcode4的环境变量,Build Settings参数,workspace及联编设置

    转自:http://www.cnblogs.com/lancidie/archive/2013/04/08/3007566.html 一.xcode4中的环境变量 $(BUILT_PRODUCTS_D ...

  6. C++_类继承3-动态联编和静态联编

    程序调用函数时,将使用哪个可执行代码块呢?编译器负责回答这个问题. 将源代码中的函数调用解释为特定的函数代码块被称为函数名联编(binding). 在C语言中,这非常简单,因为每个函数名对应一个不同的 ...

  7. C++迟后联编和虚函数表

    先看一个题目: class Base { public: virtual void Show(int x) { cout << "In Base class, int x = & ...

  8. 内联(行级)元素不能设置margin-top

    内联(行级)元素 不能设置宽高,但padding属性可以设置,需要注意的是行级元素不能设置margin-top和margin-bottom属性,但可以设置margin-left和margin-righ ...

  9. java动态联编

    JAVA中联编有两种,一种是动态联编,一种是静态联编. 动态联编:也叫多态联编或者是迟后联编,因为到底要调用哪一个函数,在编译时不能确定,而要推迟到运行中确定.也就是说,要等到程序运行时,确定了指针所 ...

随机推荐

  1. iOS图片瘦身总结

    前言 最近在公司写了个小程序来为iOS应用中的图片瘦身,进而减小APP大小,减少用户下载时的流量. 瘦身是在一个专门为图片瘦身的网站进行的. 地址:https://tinypng.com 这个网站提供 ...

  2. Laravel (5.5.33) 加载过程---make方法(四)

    /** * Resolve the given type from the container. * * @param string $abstract * @return mixed */ publ ...

  3. 【译】x86程序员手册13-第5章 内存管理

    Chapter 5 Memory Management 内存管理 The 80386 transforms logical addresses (i.e., addresses as viewed b ...

  4. RTL Compiler之Example

    Synthesis = Translation +  Logic Optimization + Mapping Step 1 Source files 1) make directory mkdir ...

  5. redis在linux下安装以及扩展

    安装过redis后发现回头忘了,今天重新安装记录下 首先 我是在home下创建redis文件   mkdir  redis 然后直接用wget安装 wget http://download.redis ...

  6. list.h在用户态下的应用

    一.背景 list.h文件位于linux/include下,内核中链表的操作函数都在其中.它有许多关于链表的操作函数,所以我们可以尝试将list.h拉到用户态中来使用,这样,我们在用户态中若要用到链表 ...

  7. iPhone设备当前IP和SSID的获取

    #import <Foundation/Foundation.h> typedef void(^Complation)(NSString *res); @interface WIFIMan ...

  8. [SQL Service] 时间处理:获取今天的00:00:00/获取今天的23:59:59

    获取今天的00:00:00 SELECT CONVERT(DATETIME,CONVERT(VARCHAR(10),GETDATE(),120)) 获取今天的23:59:59 1.SELECT DAT ...

  9. JS练习:两级联动

    代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title ...

  10. 4.bool组合查询

    主要知识: 学习bool组合查询 bool嵌套     1.搜索发帖日期为2017-01-01,或者帖子ID为XHDK-A-1293-#fJ3的帖子,同时要求帖子的发帖日期绝对不为2017-01-02 ...