如何忽略未使用的资源而不删除它们?

时间:2017-05-18 16:33:07

标签: android gradle android-resources

有一个项目有很多不同颜色的图标,都可以很好地添加到可绘制资源(ldpi,mdpi,hdpi等),还有一些其他的资源,如布局和空类;对于第一次发布,我没有使用某些特定的图标颜色及其相关活动,但我还是需要在下一个版本中添加这些资源,为了更新目的,我可能不得不忽略一些资源。

删除和添加可绘制文件的资源可能是详尽的,所以问题是:

有没有办法在没有我们目前没有使用的资源的情况下生成一个已发布签名的apk?

我试过

  

右键点击应用 - >重构 - >删除未使用的资源enter image description here

但它只是从整个项目中删除这些未使用的资源。

3 个答案:

答案 0 :(得分:2)

在Proguard文件中添加

  

-dontwarn com.squareup.okhttp。**

更改

  

proguardFiles getDefaultProguardFile('proguard-android.txt'),   'proguard-rules.pro'

picasso lib明确表示要在proguard文件中添加

访问此https://github.com/square/picasso

在哪里可以找到Proguard文件?

enter image description here

答案 1 :(得分:2)

将此行添加到proguard文件proguard-rules.pro:

-dontwarn com.squareup.okhttp.**

将build.gradle更改为:

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

之后,如果您仍然遇到proguard问题,那是因为您必须在proguard规则中添加更多排除项。

答案 2 :(得分:0)

此错误与收缩资源无关。这完全取决于你的计划配置。

可悲的是,我不能给你所有需要在proguard.txt中的东西。因为您添加到项目中的每个依赖项都有自己的proguard配置。确保为添加的每个依赖项都有正确的proguard配置。

您可以查看他们的github wiki或任何其他网站以获取模板程序。

祝你好运

埃姆雷