Android问题集之打包时避免删除无用资源文件

问题描述

在build中如果同时开启以下两个选项,那么打包时就会进行混淆并且会删除无用的资源文件。

// 代码混淆
minifyEnabled true
// 移除无用的resource文件
shrinkResources true

虽然删除无用资源能有助于较小apk大小,但是偶尔也会遇到一些问题。
比如用到一些第三方的东东,需要导入它的资源,但是在代码中又没有明确的引用这些资源,那么打包的时候就会删除这些资源文件,导致使用的时候会加载不到资源文件而出现异常报错。

解决方案

在项目的src/main/res目录下,添加raw/keep.xml文件,内容如下

<resources xmlns:tools="http://schemas.android.com/tools"
    tools:keep="@drawable/yw_1222_*,@drawable/res_name" />

这里的@drawable/yw_1222_*和@drawable/res_name就是那些需要避免被删除的资源文件,多个资源文件之间用”,”符号分开。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

果冻豆人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值