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

Mic*_*son 3 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];
Run Code Online (Sandbox Code Playgroud)

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

为了使我的项目能够与 CocoaPods 配合使用,我必须修改代码以将资源转储到Project.app/Resources文件夹中,并修改要使用的访问权限:

NSString *javascriptDirectory = [[bundle pathForResource:@"main" 
                                                  ofType:@"js"] stringByDeletingLastPathComponent];
Run Code Online (Sandbox Code Playgroud)

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

然而,它的资源被毫不客气地转储到Resources文件夹中,这很丑陋,因此不太好。

我的 CocoaPods 规范的相关部分:

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

Pod::Spec.new do |s|
  #...
  s.resource  = ['Project/Dependencies/*.js', 'Project/Dependencies/index.html']
  #...
end
Run Code Online (Sandbox Code Playgroud)

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

iga*_*gis 5

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

s.resources  = "Project/Dependencies"
Run Code Online (Sandbox Code Playgroud)

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