Android production build `MissingDefaultResource` lint error.
See original GitHub issueWhen building Android app for production build I get this lint error. Its because generator builds only folders drawable-land-xxxx and drawable-port-xxx. There should be build also default drawable-xxxx folders I think.
Temporary solution is suppress this lint error adding this code to android/app/build.gradle
application {
....
lintOptions{
disable 'MissingDefaultResource'
}
}
More info about lint error (source: http://tools.android.com/tips/lint-checks)
MissingDefaultResource
Summary: Missing Default
Priority: 6 / 10 Severity: Fatal Category: Correctness
If a resource is only defined in folders with qualifiers like -land or -en, and there is no default declaration in the base folder (layout or values etc), then the app will crash if that resource is accessed on a device where the device is in a configuration missing the given qualifier.
As a special case, drawables do not have to be specified in the base folder; if there is a match in a density folder (such as drawable-mdpi) that image will be used and scaled. Note however that if you only specify a drawable in a folder like drawable-en-hdpi, the app will crash in non-English locales.
There may be scenarios where you have a resource, such as a -fr drawable, which is only referenced from some other resource with the same qualifiers (such as a -fr style), which itself has safe fallbacks. However, this still makes it possible for somebody to accidentally reference the drawable and crash, so it is safer to create a default dummy fallback in the base folder. Alternatively, you can suppress the issue by adding tools:ignore=“MissingDefaultResource” on the element.
(This scenario frequently happens with string translations, where you might delete code and the corresponding resources, but forget to delete a translation. There is a dedicated issue id for that scenario, with the id ExtraTranslation.)
Issue Analytics
- State:
- Created 5 years ago
- Reactions:5
- Comments:7

Top Related StackOverflow Question
That can be the solution.
Here’s what the doc say.
Providing the best device compatibility with resources … Likewise, if you provide different layout resources based on the screen orientation, you should pick one orientation as your default. For example, instead of providing layout resources in layout-land/ for landscape and layout-port/ for portrait, leave one as the default, such as layout/ for landscape and layout-port/ for portrait.
since I upgraded Android Studio I have the same problem 😦 To solve also I have inserted in build.gradle:
Is this sufficient, or will there be problems with the App? Thanks!