Android Lint: how to ignore missing translation warnings in a specific file

Is it possible to translate some strings, but not all, in a separate resource file without Lint complaining about MissingTranslation?

For example: my app’s strings are all in res/values/strings.xml. One of the strings is

  • Can't answer incoming call in android marshmallow 6.0
  • Fused Location Provider setsmallestDisplacement doesn't work in Android
  • Can I scale a View in Android?
  • Android: APK Icon is not being installed
  • how to use Digest authentication in android?
  • Alternative to zxing QR reader library for Java/Android?
  • <string name="postal_code">Postal Code</string>

    Since “postal code” is usually called “zip code” in the US, I want to add another resource res/values-en-rUS/strings.xml with contents:

    <?xml version="1.0" encoding="utf-8"?>
        <string name="postal_code">Zip Code</string>

    However, Lint complains about other strings in values/strings.xml but not in values-en-rUS/strings.xml

    I realize you can suppress the warnings by specifying tools:ignore in values/strings.xml. But this is undesirable because the Lint warning is actually useful when translating to another language.

    Instead, is it possible to suppress the warning in the values-en-rUS/strings.xml file, as in, telling Lint not to use that file as criteria when looking for missing translations?

    Related posts:

    How to create a HTTP server in Android?
    Android Material Design Divider Color
    How to properly clear all notification once clicked?
    Multi-gradient shapes
    Android Studio build error - Multiple dex files define Landroid/support/v4/
    Error:In &lt;declare-styleable&gt; SherlockSpinner, unable to find attribute android:popupPr...
  • Textview: using the dialog title style: @android:style/TextAppearance.DialogWindowTitle
  • Get value from RemoteMessage from FCM onMessageReceived method
  • Does Fragments with setRetainInstance(true) survive process shutdowns?
  • Native prebuilt shared library in Android Studio with experimental Gradle plugin
  • Android widget not updating - has incorrect widget ID
  • Crop image in android
  • 5 Solutions collect form web for “Android Lint: how to ignore missing translation warnings in a specific file”

    A nice way to disable MissingTranslations check is to add the option in module specific build.gradle file .

    android {
            disable 'MissingTranslation'
    //other build tags

    If the strings are not present in locale specific Strings file, it will take the strings from the default file which generally is Strings.xml.

    I found a better solution according to this answer:

    Just add ignore="MissingTranslation" to your string.xml, for example:

    <?xml version="1.0" encoding="utf-8"?>
      tools:ignore="MissingTranslation" >
      <!-- your strings here; no need now for the translatable attribute -->

    This seems to not answered yet, so I show you one solution:

    In your DEFAULT xml file, you can define strings, that don’t need translations like following:

    <string name="developer" translatable="false">Developer Name</string>

    This string does not need to be translated and lint will not complain about it either…

    Lint has specific support for only overriding some elements in region-specific resources files (e.g., en-rUS overriding en). If the region is for the default locale, you have to let it know what language your default strings are by specifying the locale in values/strings.xml:

    <resources xmlns:tools="" tools:locale="en">

    From lint:

    By default this detector allows regions of a language to just provide a
    subset of the strings and fall back to the standard language strings. […]

    You can tell lint (and other tools) which language is the default language
    in your res/values/ folder by specifying tools:locale=”languageCode” for
    the root element in your resource file. (The tools prefix
    refers to the namespace declaration

    Add the locale specification to your default language file, and you shouldn’t get that error for en-rUS, but will still be informed of any other missing translations.

    If you are using Eclipse, please look at the toolbar buttons of the Lint warnings view. One of them is called “Ignore in file”. This should help, but only if Lint assigns the error to your “US” file. That button simply modifies the lint.xml file in your project, so you can investigate (and undo) that easily.

    More details about that file specific suppression are at

    Android Babe is a Google Android Fan, All about Android Phones, Android Wear, Android Dev and Android Games Apps and so on.