从AppStore安装时,非视网膜设备会下载@ 2x图像吗?

时间:2013-05-05 10:42:53

标签: ios

我关心我的ios应用程序的大小。我的问题是: 当非视网膜设备从AppStore 下载应用程序时,它是否也会下载视网膜图像(即@ 2x图像),尽管它永远不会被使用? 换句话说,根据目标设备,AppStore是否公开了不同的应用程序包?

谢谢!

2 个答案:

答案 0 :(得分:7)

是的,从App Store下载的所有二进制文件都完全相同(除了注入的iTunes收据)。

我猜你的@2x - 文件很大,你正在寻找压缩二进制文件的方法,所以这里有一些解决方案:

  • 如果要在运行时下载@2x或非@2x资源, 您可以将它们存储在文档文件夹中,靠近二进制文件,但是 这需要为用户额外下载。
  • 您可以使用CoreGraphics在运行时绘制一些您的作品。 CoreGraphics相当广泛,如果你有足够的经验,你可以(几乎)与Photoshop完全相同。 (我已经能够将几个UI元素移植到代码中,包括那些具有内部阴影,内部发光,阴影,渐变等的元素。)。
  • 您可以将资源转换为WebP(压缩效果非常好,不会降低质量)或使用PNG压缩器(因为Xcode使用的PNG压缩器不能很好地压缩)。
  • 尝试将您的资源变为模式。例如,如果您使用的背景每100x100重复一次,那么将其保存为640x960文件而不是将其保存为模式,并再次使用CoreGraphics在运行时渲染它。不要将导航栏保存为640x88(320x44),而是将其保存为640x2(320x1),或者如果要使用圆角等,请使用[UIImage stretchableImageWithLeftCapWidth:topCapHeight:]

我个人建议选择第二个和第四个选项的组合,因为它不会影响用户的体验,也不会涉及使用非标准的图像格式。

答案 1 :(得分:0)

它将下载所有内容:普通图像和@ 2x图像