pods的Podfile文件编写制定

use_frameworks!

A、用cocoapods 导入swift 框架 到 swift项目和OC项目都必须要 use_frameworks!
B、使用 dynamic frameworks,必须要在Podfile文件中添加 use_frameworks!

(1)如果在Podfile文件里不使用 use_frameworks! 则是会生成相应的 .a文件(静态链接库),通过 static libraries 这个方式来管理pod的代码。   

(2)Linked:libPods-xxx.a包含了其它用pod导入的第三方框架的.a文件。

(3)如果使用了use_frameworks! 则cocoapods 会生成相应的 .frameworks文件(动态链接库:实际内容为 Header + 动态链接库 + 资源文件),使用 dynamic frameworks 来取代 static libraries 方式。   

(4)Linked:Pods_xxx.framework包含了其它用pod导入的第三方框架的.framework文件。

use_frameworks! -> dynamic frameworks 方式 -> .framework
#use_frameworks! -> static libraries 方式 -> .a

有关Library 和 Framework 能够参照:
http://blog.lanvige.com/2015/…

(1)swift项目cocoapods 默认 use_frameworks!
(2)OC项目cocoapods 默认 #use_frameworks!

use_frameworks!

A、用cocoapods 导入swift 框架 到 swift项目和OC项目都必须要 use_frameworks!
B、使用 dynamic frameworks,必须要在Podfile文件中添加 use_frameworks!

(1)如果在Podfile文件里不使用 use_frameworks! 则是会生成相应的 .a文件(静态链接库),通过 static libraries 这个方式来管理pod的代码。   

(2)Linked:libPods-xxx.a包含了其它用pod导入的第三方框架的.a文件。

(3)如果使用了use_frameworks! 则cocoapods 会生成相应的 .frameworks文件(动态链接库:实际内容为 Header + 动态链接库 + 资源文件),使用 dynamic frameworks 来取代 static libraries 方式。   

(4)Linked:Pods_xxx.framework包含了其它用pod导入的第三方框架的.framework文件。

use_frameworks! -> dynamic frameworks 方式 -> .framework
#use_frameworks! -> static libraries 方式 -> .a

有关Library 和 Framework 能够参照:
http://blog.lanvige.com/2015/…

(1)swift项目cocoapods 默认 use_frameworks!
(2)OC项目cocoapods 默认 #use_frameworks!

use_frameworks!

一.为不相同target增多信赖库,可以应用下列方式编写

用cocoapods导入OC框架到swift项目:

(1)#use_frameworks! 必须创建头文件,在头文件之中 #import
“AFNetworking.h”

(2)use_frameworks! 假如有头文件,在头文件之中 #import
“AFNetworking/AFNetworking.h”,别的swift文件中用到不须要再import;借使没有头文件,则在种种要求使用的swift文件里
import AFNetworking。

用cocoapods导入OC框架到swift项目:

(1)#use_pods的Podfile文件编写制定。frameworks! 必须创立头文件,在头文件之中 #import
“AFNetworking.h”

(2)use_frameworks! 假若有头文件,在头文件之中 #import
“AFNetworking/AFNetworking.h”,此外swift文件中用到不要求再import;假若未有头文件,则在各种必要选取的swift文件里
import AFNetworking。

A、用cocoapods 导入swift 框架 到 swift项目和OC项目都不能够不要
use_frameworks!

# Podfile

platform :ios, '9.0'

use_frameworks!

# My other pods

def testing_pods
    pod 'Quick', '0.5.0'
    pod 'Nimble', '2.0.0-rc.1'
end

target 'MyTests' do
    testing_pods
end

target 'MyUITests' do
    testing_pods
end

用cocoapods导入swift框架到swift项目:

(1)必须use_frameworks!

(二)不需求头文件,在供给用到框架的swift文件里 import Alamofire

用cocoapods导入swift框架到swift项目:

(1)必须use_frameworks!

(贰)不必要头文件,在要求用到框架的swift文件里 import Alamofire

B、使用 dynamic frameworks,必须求在Podfile文件中增多 use_frameworks!

也能够依据下列情势编写
四个target重视一样的库(Ruby语法)

用cocoapods导入OC框架到OC项目:

(1)#use_frameworks澳门葡京备用网址 ,! 在要求选用的文件里 #import
“AFNetworking.h”;也足以因而pch文件,用法类似swift中的头文件。

(2)use_frameworks! 与(壹)类似,用法上从不区分。

用cocoapods导入OC框架到OC项目:

(1)#use_frameworks! 在急需选择的文书里 #import
“AFNetworking.h”;也得以通过pch文件,用法类似swift中的头文件。

(2)use_frameworks! 与(一)类似,用法上从未有过分别。

(1)要是在Podfile文件里不利用use_frameworks!
则是会调换对应的.a文件(静态链接库),通过staticlibraries那些点子来管理pod的代码。 
(2)Linked:libPods-xxx.a包括了其他用pod导入的第叁方框架的.a文件。(叁)如若运用了use_frameworks!
则cocoapods会生成对应的.frameworks文件(动态链接库:实际内容为Header+
动态链接库 +
能源文件),使用dynamicframeworks来取代staticlibraries格局。 
(四)Linked:Pods_xxx.framework蕴含了别的用pod导入的第贰方框架的.framework文件。

platform :ios, '9.0'
use_frameworks!

targetsArray = ['01-GPUImage', '02-test']

targetsArray.each do |t|
    target t do
        pod 'GPUImage'
    end
end

用cocoapods导入swift框架到OC项目:不考虑

用cocoapods导入swift框架到OC项目:不考虑

use_frameworks! -> dynamic frameworks 方式 -> .framework

不一样target注重不一致的库

总结:

(一)用swift项目思虑参与使用 OC 和 swift
二种第3方框架,所以Podfile中央银行使swift项目暗中同意的 use_frameworks!
更为安妥,并且frameworks动态链接库具有一定的优势。 

(二)能够建立多少个Bridge头文件,用来import那3个OC框架的.h文件:#import
“xxx/xxx.h”。也许不建头文件,像swift框架同样,直接在必要使用的swift文件中import。

总结:

(一)用swift项目思量参与使用 OC 和 swift
三种第二方框架,所以Podfile中央银行使swift项目暗中同意的 use_frameworks!
更为稳当,并且frameworks动态链接库具备一定的优势。 

(二)能够创立三个Bridge头文件,用来import这多少个OC框架的.h文件:#import
“xxx/xxx.h”。恐怕不建头文件,像swift框架同样,直接在须求动用的swift文件中import。

#use_frameworks! -> static libraries 方式 -> .a

platform :ios, '8.0'
use_frameworks!
target 'targetName1' do
    pod 'Alamofire'
end

target 'targetName2' do
    pod 'Alamofire'
    pod 'Kingfisher'
end

有关Library 和 Framework 能够参照:

2.use_frameworks!
A、用cocoapods 导入swift 框架 到 swift项目和OC项目都无法不要
use_frameworks!
B、使用 dynamic frameworks,必须要在Podfile文件中增添 use_frameworks!

http://blog.lanvige.com/2015/…

(一)假使在Podfile文件里不行使 use_frameworks! 则是会变动对应的
.a文件(静态链接库),通过 static libraries 那几个方法来保管pod的代码。

(1)swift项目cocoapods 默认 use_frameworks!(2)OC项目cocoapods 默认
#use_frameworks!

(二)Linked:libPods-xxx.a包含了其余用pod导入的第二方框架的.a文件。

用cocoapods导入OC框架到swift项目:

(三)如若选取了use_frameworks! 则cocoapods 会生成对应的
.frameworks文件(动态链接库:实际内容为 Header + 动态链接库 +
能源文件),使用 dynamic frameworks 来代替 static libraries 格局。

(1)#use_frameworks!  必须创设头文件,在头文件之中 #import
“AFNetworking.h”

(4)Linked:Pods_xxx.framework包罗了此外用pod导入的第二方框架的.framework文件。
use_frameworks! -> dynamic frameworks 方式 -> .framework

(2)use_frameworks!  借使有头文件,在头文件之中 #import

use_frameworks! -> static libraries 方式 -> .a

(1)swift项目cocoapods 默认 use_frameworks!
(2)OC项目cocoapods 默认 #use_frameworks!
用cocoapods导入OC框架到swift项目:

(1)#use_frameworks! 必须创立头文件,在头文件之中 #import
“AFNetworking.h”

(2)use_frameworks! 假若有头文件,在头文件之中 #import
“AFNetworking/AFNetworking.h”,其余swift文件中用到不须要再import;假如未有头文件,则在各种须要运用的swift文件里
import AFNetworking。

用cocoapods导入swift框架到swift项目:

(1)必须use_frameworks!

(2)不需求头文件,在急需用到框架的swift文件里 import Alamofire

用cocoapods导入OC框架到OC项目:

(1)#use_frameworks! 在需求动用的公文里 #import
“AFNetworking.h”;也得以经过pch文件,用法类似swift中的头文件。

(2)use_frameworks! 与(1)类似,用法上并未有分别。

用cocoapods导入swift框架到OC项目:不考虑

总结:
(1)用swift项目考虑在场使用 OC 和 swift
二种第一方框架,所以Podfile中应用swift项目默许的 use_frameworks!
更为妥善,并且frameworks动态链接库具备一定的优势。

(二)能够建立3个Bridge头文件,用来import这几个OC框架的.h文件:#import
“xxx/xxx.h”。也许不建头文件,像swift框架同样,直接在供给运用的swift文件中import。

“AFNetworking/AFNetworking.h”,别的swift文件中用到不必要再import;借使未有头文件,则在各种需求采取的swift文件里

import AFNetworking。

用cocoapods导入swift框架到swift项目:

(1)必须use_frameworks!

(2)不需求头文件,在急需用到框架的swift文件里 import Alamofire

用cocoapods导入OC框架到OC项目:

(1)#use_frameworks! 在须求选择的文件里 #import
“AFNetworking.h”;也足以由此pch文件,用法类似swift中的头文件。

(2)use_frameworks! 与(一)类似,用法上从来不区分。

用cocoapods导入swift框架到OC项目:不考虑

总结:

(1)用swift项目考虑参加使用 OC 和 swift
两种第二方框架,所以Podfile中选取swift项目默许的 use_frameworks!
更为稳妥,并且frameworks动态链接库具备自然的优势。

(二)能够创制一个Bridge头文件,用来import那么些OC框架的.h文件:#import
“xxx/xxx.h”。也许不建头文件,像swift框架同样,直接在须要使用的swift文件中import。

本文转自:https://segmentfault.com/a/1190000007076865 

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website