Miałem do czynienia z dokładnie tym samym problemem. Na podstawie moich obserwacji problem ten został wprowadzony za pomocą wtyczki Gradle w wersji 2.3.0. Występuje, gdy w projekcie znajduje się moduł obsługujący więcej języków niż aplikacja lub inne moduły. Możesz rozpocząć edycję tłumaczeń takich modułów, ale to sprawia, że są mniej dostępne.
Jeśli wyłączysz sprawdzanie Lint za pomocą którejkolwiek z sugestii tutaj lub w przypadku podobnych pytań, zignorujesz również rzeczywiste błędy w tłumaczeniu w aplikacji, w których brakuje tłumaczenia dla obsługiwanego języka. Po tym musisz być bardzo ostrożny, utrzymując struny.
Jest jeszcze jeden, również suboptymalny, opcja: zmień wersję wtyczki na ostatnią, która nie pokazuje tych symptomów w pliku build.gradle.
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
Istnieje jednak sposób dokonać tej pracy bez utraty istotnych Ostrzeżenia/błędy i bez powrotu do starej wersji narzędzia. Można go znaleźć w Google's documentation, a także w this answer.
android {
defaultConfig {
...
resConfigs "en", "fr"
}
}
Powoduje to usunięcie niepotrzebnych zasobów oraz ostrzeżeń i błędów wraz z nimi. Zaktualizowałem swój kod i teraz wszystko układa się dobrze.
Jest jeszcze jeden problem, który został wprowadzony w nowej wersji wtyczki Gradle: Jeśli otrzymasz fałszywe alarmy, tj. Błędy narzekające na brakujące tłumaczenia dla łańcucha, który oznaczyłeś jako nieprzetłumaczalny, sprawdź, czy nazwa łańcucha istnieje w innym module. W takim przypadku zmień nazwę lub podaj tłumaczenia, a błąd zniknie.
@KapilRajput Nie ma za co! – vanloc
W Androidzie Studio można go znaleźć w "Preferencjach-> Edytor-> Inspekcje' – Lemberg