一、报错信息
在 Android Studio 工程的 build.gradle 中的 " android # defaultConfig " 中配置了 resValue 属性 , 目的是生成一个 res 资源属性 ;
该操作相当于在 res/value 目录下定义了一个资源 ;
android {
defaultConfig {
resValue("String", "gradle_res_config", "Gradle Res Config")
}
}
编译时报错 :
Can't determine type for tag '<item name="gradle_res_config" type="String">Gradle Res Config</item>'
Can't determine type for tag '<item name="" type="String"></item>'
同时在 app\build\generated\res\resValues\debug\values 目录下生成了 如下配置文件 :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item name="gradle_res_config" type="String">Gradle Res Config</item>
</resources>
二、解决方案
ProductFlavor#resValue 方法的原型如下 :
void resValue(String type, String name, String value)
第一个参数是数据类型 , 这里的数据类型指的是在 xml 文件中定义的数据类型 ;
查看在 string.xml 配置文件中配置的应用名称 :
<resources>
<string name="app_name">ClassLoader_Demo</string>
</resources>
标签的名称是 string , 首字母是小写的 , 这里注意与 String 区分 ;
使用 resValue("string", "gradle_res_config", "Gradle Res Config") 配置 ;
正确配置如下 :
android {
defaultConfig {
resValue("string", "gradle_res_config", "Gradle Res Config")
}
}
|