【问题标题】:Increased size of compiled image assets in iOS 8在 iOS 8 中增加了编译图像资源的大小
【发布时间】:2015-01-23 12:59:58
【问题描述】:

我最近在我现有的(与 iOS 7 兼容的)应用程序中添加了一个 iOS 8 照片扩展。该扩展与主应用程序共享一些图标和其他图像。由于我还不能使用嵌入式框架来共享这些资产(在 iOS 7 中不可用),因此我将这些资产添加到了两个目标——主应用程序和捆绑在应用程序中的扩展。所以我预计应用程序的大小会增加大约两倍。

但有一个问题:应用程序现在大约是原来的三倍!我试图找出原因,发现扩展包中的已编译资产的大小(38.6 MB)是主应用程序中的资产(17.2 MB)的两倍多。这很奇怪,因为它们来自同一个资产目录。

经过一些实验,我发现它与 iOS 版本有关。扩展目标将 iOS 8 作为部署目标(显然),而主应用程序仍然具有 iOS 7。当我将主应用程序的部署目标更改为 iOS 8 时,它的编译资产也变得超过两倍!

我的猜测是,对于 iOS 8,资产编译器会自动为 iPhone 6 Plus 生成 @3x 图像,即使它们没有明确提供。问题是,我决定不故意提供这些以避免不必要地增加应用程序的大小(多么讽刺......)。放大版对我来说已经足够好了。当为 iOS 7 构建时,该应用程序在 6 Plus 上也能正常工作并看起来像预期的那样(带有小资产)。

TL;DR:对于 iOS 8,资产编译器产生的结果比 iOS 7 大得多。

有没有办法告诉它不要这样做?

【问题讨论】:

    标签: ios xcode ios8 asset-catalog


    【解决方案1】:

    尝试将 Assets.xcassets 压缩设置从 Default 更新为 Basic 或 GPU Best Quality 或 GPU Smallest Size。

    Assets.car 的大小将恢复正常。

    【讨论】:

      猜你喜欢
      • 2019-04-30
      • 2016-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-25
      • 2020-10-03
      • 1970-01-01
      相关资源
      最近更新 更多