今天碰到一个问题:编译运行的时候都是好的。但是在打包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
}
}
问题解决了。但是原因不知道为撒:然后又看到了一片文章:
地址:
文章里面有原因解析..
问题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资源文件夹下,这个问题解决了。。。。
每日语录:
安下心来,扎实向前。且行且思。且行且看。。加油!!
单曲循环《你这样恨我》