3

我更新到 iOS 9 GM 和 Xcode 7 GM 并且正在提交对我的游戏的更新。

但是,验证过程现在出现“资产包必须在 /OnDemandResources 中”。错误。

在此处输入图像描述

这是日志

2015-09-14 18:50:52 +0000 [MT] 无法生成分发项目并出现错误:错误域 = IDEFoundationErrorDomain 代码 = 1“/Applications/churningseas.app/AssetPacks/Dropbox.assetpack 中的意外资产包。资产包必须在 /OnDemandResources 中。” UserInfo={NSLocalizedDescription=/Applications/churningseas.app/AssetPacks/Dropbox.assetpack 中的意外资产包。资产包必须在 /OnDemandResources 中。}

2015-09-14 18:50:52 +0000 [MT] 呈现:错误域 = IDEFoundationErrorDomain 代码 = 1“/Applications/churningseas.app/AssetPacks/Dropbox.assetpack 中的意外资产包。资产包必须位于 /OnDemandResources。 " UserInfo={NSLocalizedDescription=/Applications/churningseas.app/AssetPacks/Dropbox.assetpack 中的意外资产包。资产包必须在 /OnDemandResources 中。}

这是我的 Xcode 目录,显示 Assetpacks 当前位于 Ressources 下(我对模糊感到有些疯狂,对此感到抱歉):

在此处输入图像描述

我想这是由于苹果新的“应用程序精简”系统,我现在并不是特别想用它来做一个小的更新。

有没有办法禁用按需资源?如果没有,如何解决这个问题(我是否只需将我的“Assetpacks”文件夹移动到另一个名为“OnDemandResources”的文件夹)?我这样,在哪里?我有点紧张,搞砸了我的文件结构......

另外,我确实已经查看了构建设置的资产部分,并且“启用按需资源”已经设置为“否”

在此处输入图像描述

任何帮助表示赞赏。非常感谢!

4

2 回答 2

2

自从 iOS 9 引入按需资源以来,这似乎已经成为一个问题。尝试验证存档时,文件夹引用中的术语“AssetPacks”或“assetpack”会导致错误。

因为这似乎会影响 2.3.1 及更早版本下的 Codea 导出项目。这是专门针对 Codea 导出项目的修复:

  • libversion找到在导出项目的根目录中命名的文件。它将包含一个版本号,很可能是2.3.1. 将其更改为2.3.2
  • 从您的文件夹中删除libcodea.alibtools.aLibs/
  • 从导出的 Xcode 项目中的“Resources”组中删除“AssetPacks”文件夹引用 - 如果 Xcode 要求您将文件移动到垃圾箱,请说 NO。
  • 在 Finder 中:将“AssetPacks”文件夹重命名为“Assets”
  • 在 Finder 中:将其中的每个“SomePack.assetpack”文件夹重命名为“SomePack.assets”
  • 将根级“Assets”文件夹拖回 Xcode,告诉 Xcode 将其添加为“文件夹引用”(而不是“组”)

这里有更深入的讨论https://bitbucket.org/TwoLivesLeft/core/issues/366/trying-to-export-xcode-file-so-i-can#comment-22075482

于 2015-09-28T10:12:31.033 回答
0

我花了一段时间才弄清楚这一点,但我似乎得到了一些有用的东西。归档构建后,如果您转到 XCode 的首选项并单击选项卡位置,您将找到归档保存文件的位置。如果您然后单击“档案”部分下方的链接,它将带您到一个文件夹(您打开该文件夹),其中包含其中的档案。导航到您归档构建的日期,然后(使用获取信息来确定时间)找到您的构建。右键单击它,然后单击“显示包内容”。然后点击产品。创建一个名为“OnDemandResources”的新文件夹。单击应用程序并右键单击文件并打开包内容。根据您资产的先前位置,它们将在那里的某个地方,但对我来说,它们位于一个名为 Assets 的方便文件夹中。找到包含资产的文件夹后,您需要将其复制并删除。在我们之前创建的 OnDemandResources 文件夹中,创建一个新文件夹,命名为您的包包标识符 (com.-----.-----) 并添加到它的末尾: .New.assetpack 。然后将您的 AssetPacks(或 Assets)文件粘贴到其中。现在您要创建一个新的文本编辑文件,将其设置为纯文本,然后键入:bplist00“TTags_CFBundleIdentifier°SNew_?com.Identifier.Identifier.asset-pack-00000008CM2Z9 ')-o 这就是我的意思,我不知道它是否对你有用,但我不明白为什么不。这种方法对我有用,现在我有一个可用的 .ipa 文件。我希望这个对你有用!创建一个新文件夹,称为您的包包标识符 (com.--------.-----) 并添加到它的末尾: .New.assetpack 。然后将您的 AssetPacks(或 Assets)文件粘贴到其中。现在您要创建一个新的文本编辑文件,将其设置为纯文本,然后键入:bplist00“TTags_CFBundleIdentifier°SNew_?com.Identifier.Identifier.asset-pack-00000008CM2Z9 ')-o 这就是我的意思,我不知道它是否对你有用,但我不明白为什么不。这种方法对我有用,现在我有一个可用的 .ipa 文件。我希望这个对你有用!创建一个新文件夹,称为您的包包标识符 (com.--------.-----) 并添加到它的末尾: .New.assetpack 。然后将您的 AssetPacks(或 Assets)文件粘贴到其中。现在您要创建一个新的文本编辑文件,将其设置为纯文本,然后键入:bplist00“TTags_CFBundleIdentifier°SNew_?com.Identifier.Identifier.asset-pack-00000008CM2Z9 ')-o 这就是我的意思,我不知道它是否对你有用,但我不明白为什么不。这种方法对我有用,现在我有一个可用的 .ipa 文件。我希望这个对你有用!assets-pack-00000008CM2Z9 ')-o 这就是我的意思,我不知道它是否适合你,但我不明白为什么不。这种方法对我有用,现在我有一个可用的 .ipa 文件。我希望这个对你有用!assets-pack-00000008CM2Z9 ')-o 这就是我的意思,我不知道它是否适合你,但我不明白为什么不。这种方法对我有用,现在我有一个可用的 .ipa 文件。我希望这个对你有用!

于 2015-09-18T22:52:33.907 回答