12

我正在为 iOS 处理一个相当大的、资产繁重的项目,我不禁注意到 Xcode 复制了数百个资源(纹理、精灵表、声音文件等),自上次以来根本没有改变我为设备构建的时间。当每次构建需要 2-4 分钟才能在设备上弹出时,它会使编码变得非常非常慢。

有没有办法让 Xcode 识别它正在做多余的事情,或者编写一个脚本,让它更智能地了解如何将资源传输到设备?

PS我意识到应用程序可能没有任何内置的“附加”功能。我希望情况并非如此。

4

3 回答 3

4

您可以尝试向项目中添加另一个目标并将其命名为“无资源”。从该目标中排除所有重资源。第一次需要使用所有资源目标启动应用程序,下次使用“无资源”目标。如果你在项目中添加了一些东西,你应该使用第一个目标。

于 2012-10-06T21:30:34.313 回答
3

iOS 仅支持部署已签名到设备的完整应用程序包。将调试版本部署到设备的过程是这样的。

  1. 编译更改的源代码并签署二进制文件
  2. Alpha预乘PNG图像
  3. 创建一个包含应用程序资源和二进制文件的文件夹
  4. 对文件夹的内容进行签名并使用文件夹和签名创建一个 ZIP 文件
  5. 将 ZIP 文件 (.ipa) 复制到设备

不幸的是,我想时间花在 #3 和 #4 上,每个构建都会创建它们。我还没有看到任何加快速度的方法。如果你有很多很多 PNG 图像,你可以尝试告诉 Xcode 跳过 Step 2

如果您的应用程序允许您在开发的大部分时间不包含许多资源,NeverBe 的方法听起来是个好主意。您也可以拥有第二组更小/虚拟的资源,您可以切换进出。

于 2012-10-06T21:40:39.523 回答
0

有时,XCode 确实将未更改的资源打包。通常,当您通过 Finder 而不是 XCode 更改文件时。

Make Project -> Clean 进行完全重建

于 2012-10-06T20:24:47.930 回答