苹果的 On-Demand Resources(翻译) 也是通过这种按需加载资源的思路给我们提供了一种阶段性加载资源的途径,具体的不展开描述,你可以点前面的链接进行查看。但是虽然以关卡、tag这种方式来按需加载资源,但是苹果的服务器对于中国用户来说实在是慢的不行,所以暂时不建议采取这种方式。你们可以在自己服务器上实现这种策略方式来加载图片。ODR 模式 ODR 缓存策略
Local
当然全部将非必须资源文件放到服务器上明显是不现实的,对于一些必用资源文件,还是需要将资源文件集成到安装包中的。必用资源文件:安装了 App 肯定会用到。
Local 集成方式
Create group 和Create folder references这两种其实就是直接把资源文件拖进去,在Xcode 打包之后,所有图片都在可执行文件的相同目录下面。这也是很多老的 App 或者目前部分 App 的使用方式。.xcassets这是苹果在 Xcode 5 出来之后,推荐我们使用的图片管理方式,提供了图片渲染、拉伸模式模式、机型适配等功能。在Xcode 打包之后所有的.xcassets文件都会放入一个Assets.car文件中。
Local 开发使用方式列举分析。
一般 App 的图片内置方式采用拖的方式,图片包含@1x、@2x 和@3x。采用拖的方式,图片只包含 @2x 和@3x。采用拖的方式,图片只包含 @2x 或@3x。采用.xcassets的方式,图片包含@1x、@2x 和@3x。采用.xcassets的方式,图片只包含@2x 和@3x。采用.xcassets的方式,图片只 包含@2x 或@3x。采用.xcassets的方式,图片使用 PDF。
(可能还有其他方式,希望你能告诉我。)
拖的方式
首先@1x、@2x 和@3x主要是为了适配不同 ppi 的机子而做了一种策略。@1x主要是为了适配iPhone 4之前的非Retina屏幕,@2x主要是为了适配非plus的iPhone 设备,@3x是为了适配一个点的 3 * 3 个像素的手机。因为iPhone 4之前的机子基本没有什么 App 会去适配,所以一般来说都会删除,所以就有了『采用拖的方式,图片只包含@2x 和@3x』的方式。但是假如你只提供一张图片,例如你只提供了一张@3x的图片,