shrinkResources true不能用于Instant Apps功能吗?

时间:2017-09-14 13:05:28

标签: android android-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真的不支持吗?

3 个答案:

答案 0 :(得分:3)

根据我从文章中理解的内容(我刚刚快速阅读,仍在我的阅读列表中待定),shrinkResources true只需要removing unused resources来减少APK尺寸,但它不是Instant Apps的正式要求。我想工具链无法决定资源是否在库中未使用,因为最终的APK没有构建。

因此,如果您的项目中没有未使用的资源,则不应该是一个问题,可以删除。

然后,在您的项目中有一件事可能是错误的(没有自己尝试过Instant Apps,只是阅读并看到Google IO会谈):根据我的理解,即时应用的所有模块都是APK,而不是库。因此,如果您将shrinkResources true应用于APK,那么您应该很高兴。如果项目中有用于组装最终APK模块的库,则在那里删除shrinkResources true,然后将其保留在模块中。

答案 1 :(得分:1)

我认为这不是AndroidStudio的错误,而是一个Gradle错误。 我正在尝试使用Jenkins构建,使用Gradle的更新版本(以前使用的是com.android.tools.build:gradle:2.2.3,将其升级到com.android.tools.build:gradle:3.0.1 )我仍然得到错误

">资源缩减器不能用于库。"

答案 2 :(得分:0)

参考Google issue tracker

修复程序将在3.2 canary 1中,然后发布。

我刚刚在 3.2 canary 3 上再次尝试了它,它正在运行。您确定已将插件版本更新为3.2.0-alpha03吗?这很容易被忽视。

如果问题仍然存在,请在Google issue tracker报告,然后重新审核。