Я унаследовал старое приложение для Android, и первое, что я сделал, это изменение сборки от Ant до gradle. Приложение прекрасно работает, но когда я пытаюсь запустить цель релиза, gradle терпит неудачу в связи с отсутствием переводов.Android расширяет стандарт по умолчанию
Структура папок папки ресурсов является: (язык по умолчанию, в значениях папка ан-ГБ)
res/
values/
/file1.xml
/file2.xml
/file3.xml
/values-us/
/file2.xml (containing just the few lines that differ from /value/file2.xml
/values-dk/
file1.xml
file2.xml
file3.xml
Таким образом, в основном ЛИНТЕР является правильным, большинство файлов отсутствуют в values-us. Однако в одном локали содержится около 20 файлов с примерно 100 + строками каждый, а разница между стандартным и US - это, вероятно, 5 строк, представляется нецелесообразным поддерживать все значения для обеих локалей. Чтобы быть ясным, я абсолютно хочу, чтобы цель релиза завершилась неудачей, когда значения-dk/или values-de/отсутствуют переводы, я просто хочу отметить локаль США как расширение по умолчанию. Это возможно?
Установите атрибут 'translatable =" false "' на строки, которые не должны быть переведены (в 'en-GB'). То же самое касается ваших (возможных) строковых массивов. –
спасибо за ввод, но мне бы хотелось, чтобы linter запускался там, где это имеет смысл, f.x. в любых не английских папках значений. Я добавил дополнительную информацию к исходному вопросу – vruum
... ну, это уже так. В неанглийских папках Линт жалуется на нетранслируемые строки. Но, если строки отмечены как «непереводимые» (в английской папке), они больше не будут жаловаться на такие слова. –