I've just tried to generate signed apk for one of my projects (I already did this before), but (maybe since updating Android Studio) I'm getting
Error:Error: Expected resource of type string [ResourceType]
This is because I'm using Butterknife's @BindString, that is generated into something like that
target.settings = res.getString(2131230792);
How can I make studio not detect this as error? I've tried searching in settings, but without success.
Answer to this is: disable lint rule in your build.gradle
android {
lintOptions {
disable "ResourceType"
}
}
Edit: This may happen particularly when migrating from Eclipse to Android Studio.
This is reported on the GitHub project. It will be fixed in the next version of ButterKnife.
The workaround is indicated there, and is to add a lint.xml
file on the app
module with the following content to ignore that errors on *$$ViewBinder
classes (the ones that ButterKnife generates):
<issue id="ResourceType">
<!-- Remove this when this is fixed: https://github.com/JakeWharton/butterknife/issues/338 -->
<ignore path="**/*$$ViewBinder.java" />
</issue>
Maybe a better solution is to temporary disable error/warning by using @SuppressLint("ResourceType")
just before the method definition.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With