Android studio打包apk的时候报错Android Error:Error: Expected a color resource id (R.color.) but received an

本文解决两个常见Android打包问题:一是编译正常但打包时出现颜色资源类型错误,通过修改lintOptions配置解决;二是Element layer-list must be declared错误,将相关资源文件移至drawable文件夹即可。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天碰到一个问题:编译运行的时候都是好的。但是在打包apk的时候报错了。错误是:Android Error:Error: Expected a color resource id (R.color.) but received an RGB integer [ResourceType]
。。在网上看到一个解决方法:

android {
lintOptions {
disable “ResourceType”
}
}

或者:

android{
lintOptions {
        checkReleaseBuilds false
    }
}

问题解决了。但是原因不知道为撒:然后又看到了一片文章:
地址:

http://www.cnblogs.com/supluo/p/5512917.html

文章里面有原因解析..
问题2:Android Studio下Element layer-list must be declared问题
运行的时候也是没有报错。但是在打包的时候报错了。一看anim文件夹下有个文件报错了。。有一行英文。大概意思就是layer-list或者shape这些标签没有定义。。layer-list或者shape等这些标签是常用的标签,Android Studio居然报没有定义错误,在Eclipse中却没有这个问题。网上不少人说这是Android Studio的一个bug。。。具体解决方法就是把这两个文件放到drawable文件夹下。就好了。。

对于这个问题,首先要了解layer-list、shape等这些标签是什么东西。每一种标签都有对应的资源类,layer-list、shape等等标签代表的其实是个drawable资源。layer-list最终会解析为LayerDrawable,shape会解析为ShapeDrawable,其它的标签类似。由此可以看出layer-list或者shape等资源是drawable资源,应该放到drawable资源文件夹下。color资源不包括drawable资源,当然没有定义drawable类型的标签。

Eclipse不像Android Studio,对资源类型的检查没有那么严格,所以没有报错误。我觉得这倒是Android Studio的优点,是什么资源就应该放到什么位置,不容易让人产生疑惑。所以在Android Studio下的解决方法就是把这些资源文件移动到drawable资源文件夹下,这个问题解决了。。。。

每日语录:
安下心来,扎实向前。且行且思。且行且看。。加油!!
单曲循环《你这样恨我》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值