为什么Xcode在构build设备时复制不变的资源?
我正在为iOSdevise一个相当庞大,资产重的项目,我不禁注意到Xcode复制了自上次以来一直没有改变的数百个资源(纹理,spritesheets,声音文件等)我build立到设备的时间。 当每次编译需要2-4分钟才能在设备上popup时,编码确实非常慢。
有没有办法让Xcode认识到它正在做冗余的事情,或者编写一个脚本,使它能够更加智能地将资源转移到设备上?
PS我意识到,可能没有任何内置的“附加”function的应用程序。 我希望事实并非如此。
您可以尝试将另一个目标添加到项目中,并将其命名为“无资源”。 从这个目标中排除所有沉重的资源。 第一次你需要启动所有的资源目标的应用程序,下次使用“没有资源”的目标。 如果你添加了一些项目,你应该使用第一个目标。
iOS仅支持部署已签名到设备的完整应用程序包。 将debugging版本部署到设备的过程是这样的。
- 编译更改的源代码并签名二进制
- Alpha前乘PNG图像
- 用应用程序资源和二进制文件创build一个文件夹
- 签署该文件夹的内容,并创build一个ZIP文件的文件夹和签名
- 将ZIP文件(.ipa)复制到设备
不幸的是,我可以想象在#3和#4中花费的时间被创build。 我没有看到任何方法来加速这一点。 如果您有许多PNG图像,您可以尝试告诉Xcode跳过步骤2 。
NeverBe的方法听起来像是一个好主意,如果你的应用程序可以让你在开发的大部分时间里不包含许多资源。 你可以select另外一组更小/虚拟的资源,你可以切换进出。
有时,XCode真的把不变的资源打包。 通常,当您通过Finder更改文件时,而不是XCode。
使项目 – >清理完成重build
- 保存CloudKitlogging“未经身份validation”(9/1002)“”此请求需要经过身份validation的帐户“”
- 在设备上运行时,Xcode Instruments无法拍摄泄漏的快照