Используйте android:gravity="center"
для решения вашей проблемы.
Этот выглядит очень хорошо: несколько языков, возможность обновления, независимый от базы данных формат файла для импорта, информация о странах / регионах / городах и некоторые другие функции, которые вы можете использовать или нет.
И это вполне доступно, если вам нужен только один сервер.
Списки ISO здесь удобны для БД, хотя они включают только короткие имена и коды.
geonames довольно точны в этом отношении, и они регулярно обновляются.
Такого не существует. Это политический вопрос, который вы можете решить только в контексте вашего собственного приложения. Решение использовать ISO 3166 может быть самым легким для защиты. Я знаю о проблемах как минимум:
В ЕС хранятся данные о местных административных единицах (LAU), которые можно загрузить в виде иерархических файлов XLS на нескольких языках.
Ну, подождите, вам просто нужен актуальный список стран? Или вам нужно знать, что Страна X разделилась на страну Y и страну Z? Потому что я не знаю ни одного автоматического способа получить последнее. Даже обновления баз данных ISO распространяются в виде PDF-файлов (вы сами можете внести изменения)
Вы можете попробовать CLDR
Этот набор данных поддерживается организацией Unicode. Он регулярно обновляется, а данные версируются, поэтому вам будет проще управлять состоянием своего списка.