使CocoaPods将资源复制到特定文件夹

时间:2013-01-31 07:26:05

标签: cocoa cocoapods

在尝试使我的项目使用CocoaPods之前,我的项目目标将资源复制到文件夹结构中,如:

  

Project.app/Resources/deps/javascript / *。JS   Project.app/Resources/deps/html/index.html

在我的代码中,我访问了以下资源:

NSString *javascriptDirectory = [[bundle pathForResource:@"main" 
                                                  ofType:@"js"                                                       
                                             inDirectory:@"deps/javascript"] stringByDeletingLastPathComponent];

在为项目创建CocoaPod规范时,我发现CocoaPods将资源转储到ProjectUsingCocoaPods.app/Resources文件夹中。

为了让我的项目与CocoaPods一起工作,我因此不得不修改我的代码以将资源转储到Project.app/Resources文件夹中,并修改要使用的访问权限:

NSString *javascriptDirectory = [[bundle pathForResource:@"main" 
                                                  ofType:@"js"] stringByDeletingLastPathComponent];

我的项目现在可以通过CocoaPods使用,这很棒。

它的资源被毫不客气地转储到Resources文件夹中,但这很难看,因此不太好。

我的CocoaPods规范的相关部分:

我有一个CocoaPods规范文件,它指定了我的项目所需的一些资源:

Pod::Spec.new do |s|
  #...
  s.resource  = ['Project/Dependencies/*.js', 'Project/Dependencies/index.html']
  #...
end

我的问题是:是否可以指定CocoaPods应该将资源复制到哪些资源子目录?

1 个答案:

答案 0 :(得分:4)

我发现将文件夹指定为资源只会在Pods项目中创建对该文件夹的引用:

s.resources  = "Project/Dependencies"

所以,没有任何通配符。 Pods项目将引用Dependencies文件夹及其所有内容和子文件夹。