Android Studio 禁用 "Expected resource of type string"
AndroidStudio disable "Expected resource of type string"
我刚刚尝试为我的一个项目生成签名的 apk(我之前已经这样做过),但是(可能是因为更新了 Android Studio)我得到了
Error:Error: Expected resource of type string [ResourceType]
这是因为我使用的是 Butterknife 的 @BindString,它会生成类似的东西
target.settings = res.getString(2131230792);
如何让工作室不将此检测为错误?我尝试在设置中搜索,但没有成功。
对此的回答是:在 build.gradle
中禁用 lint 规则
android {
lintOptions {
disable "ResourceType"
}
}
编辑:
从 Eclipse 迁移到 Android Studio 时尤其可能发生这种情况。
据报道on the GitHub project。
ButterKnife 下个版本会修复
there 指出了解决方法,即在 app
模块上添加一个包含以下内容的 lint.xml
文件,以忽略 *$$ViewBinder
类(ButterKnife 生成的):
<issue id="ResourceType">
<!-- Remove this when this is fixed: https://github.com/JakeWharton/butterknife/issues/338 -->
<ignore path="**/*$$ViewBinder.java" />
</issue>
我也有类似的问题。使用 getString 方法。结果我试图从 strings.xml 而不是 ids.xml 获取字符串值,因为我是用 getString(R.id.MYSTRING) 获取它的,而它应该是 R.string.MYSTRING
也许更好的解决方案是在方法定义之前使用 @SuppressLint("ResourceType")
暂时禁用 error/warning。
这是针对具有相同 ID 的一些视图,您尝试为其中之一更改一些 属性。
当尝试生成 apk 时 android 发现一些关于资源 id
的冲突
解决
更好的方法是找到代码并尝试用另一种方式解决这个问题
祝你好运
我刚刚尝试为我的一个项目生成签名的 apk(我之前已经这样做过),但是(可能是因为更新了 Android Studio)我得到了
Error:Error: Expected resource of type string [ResourceType]
这是因为我使用的是 Butterknife 的 @BindString,它会生成类似的东西
target.settings = res.getString(2131230792);
如何让工作室不将此检测为错误?我尝试在设置中搜索,但没有成功。
对此的回答是:在 build.gradle
中禁用 lint 规则android {
lintOptions {
disable "ResourceType"
}
}
编辑: 从 Eclipse 迁移到 Android Studio 时尤其可能发生这种情况。
据报道on the GitHub project。 ButterKnife 下个版本会修复
there 指出了解决方法,即在 app
模块上添加一个包含以下内容的 lint.xml
文件,以忽略 *$$ViewBinder
类(ButterKnife 生成的):
<issue id="ResourceType">
<!-- Remove this when this is fixed: https://github.com/JakeWharton/butterknife/issues/338 -->
<ignore path="**/*$$ViewBinder.java" />
</issue>
我也有类似的问题。使用 getString 方法。结果我试图从 strings.xml 而不是 ids.xml 获取字符串值,因为我是用 getString(R.id.MYSTRING) 获取它的,而它应该是 R.string.MYSTRING
也许更好的解决方案是在方法定义之前使用 @SuppressLint("ResourceType")
暂时禁用 error/warning。
这是针对具有相同 ID 的一些视图,您尝试为其中之一更改一些 属性。 当尝试生成 apk 时 android 发现一些关于资源 id
的冲突解决
更好的方法是找到代码并尝试用另一种方式解决这个问题
祝你好运