当我试图缩小我的特征APK大小时,我在我的特征Build Gradle中使用shrinkResources true
。然而它报错了:Error:Resource shrinker cannot be used for libraries.
这篇文章要求我们使用它:https://medium.com/jet-stories/make-your-app-instant-33855ab5d02b
我做错了什么还是这确实不受Instant Apps的支持?
当我试图缩小我的特征APK大小时,我在我的特征Build Gradle中使用shrinkResources true
。然而它报错了:Error:Resource shrinker cannot be used for libraries.
这篇文章要求我们使用它:https://medium.com/jet-stories/make-your-app-instant-33855ab5d02b
我做错了什么还是这确实不受Instant Apps的支持?
shrinkResources true
仅需要通过删除未使用的资源来减小APK大小,但它不是即时应用程序的正式要求。我猜工具链不能确定库中的资源是否会被使用,因为最终APK没有构建。
因此,如果您的项目中没有未使用的资源,就不应该有问题,可以将其删除。
然后,有一件事可能在您的项目中不正确(没有尝试过即时应用程序,只是阅读并观看了Google IO演讲):据我所知,即时应用程序的所有模块都是APK,而不是库。因此,如果您将shrinkResources true
应用于APK,则应该可以顺利运行。如果您的项目中有用于组装最终APK模块的库,请在那里删除shrinkResources true
,并在模块中保留它。
shrinkResources
的原因。 - Elye我认为这不是AndroidStudio的问题,而是Gradle的问题。我正在尝试使用Jenkins进行构建,并使用更新版本的Gradle(之前使用的是com.android.tools.build:gradle:2.2.3,升级到了com.android.tools.build:gradle:3.0.1),但仍然出现错误:
"> 资源缩减器不能用于库。"
修复将在3.2金丝雀版1以及之后的版本中发布。
我刚刚在3.2金丝雀版3上再次尝试,它可以正常工作。你确定已经更新了插件版本为3.2.0-alpha03
吗?这很容易被忽视。
如果仍有任何问题,请报告到Google问题跟踪器,他们会重新开放以进行检查。
shrinkResources
对我来说很好用。但是当我尝试在AS 3 beta 4中使用shrinkResources true
时,我得到了与你相同的错误。你能否提交一个bug,然后在这里链接它?这对所有人都有帮助,谢谢!https://issuetracker.google.com/issues/new?component=316045&template=1018787 - Julia K