Android studio как сменить язык на русский

Переключение языка в Android-приложении

Есть простой способ реализовать переключение языка в Single-Activity приложении. Стек экранов при этом подходе не сбрасывается, пользователь остается там, где переключил язык. Когда пользователь переходит на предыдущие экраны, они сразу отображаются переведенными. А результат локализации чисел, денежных сумм и процентов может удивить дизайнеров.

О чем пойдет речь, а о чем не пойдет?

Далее не будет ничего о:

Что мы хотим сделать?

Пусть в нашем приложении есть экран с настройками, и мы хотим добавить в него пару новых пунктов, один из которых позволил бы переключать язык приложения, а другой изменять валюту, в которой отображаются денежные суммы. Приведем примеры того, как это может выглядеть.

Кроме перевода текста и отображения верстки справа налево, эти настройки должны влиять на формат отображения числовых значений. Необходимо, чтобы все отображалось согласно выбранной локали.

Архитектурное решение

Представим, что наше приложение написано в соответствии с Single-Activity подходом. Тогда механизм переключения языка может быть реализован следующим образом.

SettingsInteractor является источником текущего значения языка. Он позволяет подписаться на это значение, получить его синхронно и подписаться только на обновления. В случае необходимости можно ввести дополнительную абстракцию над SettingsInteractor по принципу разделения интерфейса. На диаграмме несущественные детали опущены.

AppActivity при создании заменяет контекст на новый, чтобы приложение использовало ресурсы для выбранного языка.

AppPresenter в свою очередь подписывается на обновления языка и уведомляет View об изменениях.

AppActivity при получении уведомления о смене языка пересоздается.

AppActivity является единственной в приложении. Все остальные экраны реализованы фрагментами. Поэтому при пересоздании активити стек экранов сохраняется системой. При возврате на предыдущие экраны они будут переинициализированы и отображаться переведенными. Пользователь останется на списке выбора языка и увидит результат своего выбора мгновенно.

Форматирование чисел, денежных сумм и процентов

Обратите внимание, что валюту необходимо устанавливать отдельно.

Если вы экономите такты CPU и биты памяти, а переключение валюты и языка – основная и часто используемая функция вашего приложения, то здесь, конечно, необходим кэш.

Представление языков и валют

Экземпляры класса Locale создаются по языковому тегу, который состоит из двухбуквенного кода языка и двухбуквенного кода региона. А экземпляры класса Currency – по трехбуквенному ISO коду. В этом виде язык и валюта должны сериализовываться для сохранения на диск или передачи по сети, и тогда будет хорошо. Приведем примеры.

Особенности форматирования числовых значений

Результат форматирования чисел в соответствии с региональными стандартами может разойтись с ожидаемым. Символ валюты или ее трехбуквенный код на разных языках будет выводиться по-разному. Знак минуса у отрицательных денежных значений будет появляться в неожиданных местах, а кое-где вместо него будут выводиться скобки. Знак процента может оказаться не совсем тем знаком, к которому мы привыкли.

Дело в том, что с точки зрения региональных шаблонов итоговая строка состоит из префикса и суффикса для положительных и отрицательных чисел, разделителя тысячных и десятичного разделителя, а они разные для разных локалей.

Числа

Language Negative Prefix Negative Suffix Positive Prefix Positive Suffix Grouping Separator Decimal Separator
ru-RU “-“ ” “ “,”
en-US “-“ “,” “.”
iw-IL “-“ “,” “.”
ar-AE “-“ “٬” “٫”
fr-FR “-“ ” “ “,”
de-DE “-“ “.” “,”
de-CH “-“ “‘” “.”
da-DK “-“ “.” “,”

Валюты

Language Negative Prefix Negative Suffix Positive Prefix Positive Suffix Grouping Separator Decimal Separator
ru-RU “-“ ” ₽” ” ₽” ” “ “,”
en-US “-$” “$” “,” “.”
iw-IL “-“ ” ₪” ” ₪” “,” “.”
ar-AE “-“ ” د.إ.‏” ” د.إ.‏” “٬” “٫”
fr-FR “-“ ” €” ” €” ” “ “,”
de-DE “-“ ” €” ” €” “.” “,”
de-CH “CHF-“ “CHF “ “‘” “.”
da-DK “-“ ” kr.” ” kr.” “.” “,”

Проценты

Language Negative Prefix Negative Suffix Positive Prefix Positive Suffix Grouping Separator Decimal Separator
ru-RU “-“ “%” “%” ” “ “,”
en-US “-“ “%” “%” “,” “.”
iw-IL “-“ “%” “%” “,” “.”
ar-AE “-“ ” ٪” ” ٪” “٬” “٫”
fr-FR “-“ ” %” ” %” ” “ “,”
de-DE “-“ ” %” ” %” “.” “,”
de-CH “-“ “%” “%” “‘” “.”
da-DK “-“ ” %” ” %” “.” “,”

Более того, результаты форматирования для Android SDK и JDK могут быть разными. При этом все варианты правильные, каждый из них используется в определенных контекстах.

DecimalFormat

Также можно написать тест, чтобы насладиться разнообразием. Не для всех локалей одна и та же валюта выводится символом.

В итоге

Общая схема решения выглядит следующим образом.

Как мы увидели, региональные форматы вывода чисел нетривиальны. Не стоит жестко задавать единый шаблон на все случаи жизни. Лучше доверить форматирование SDK и договориться, что числа будут выводиться по стандарту, а не как нарисовано на макетах.

Как проще тестировать? (бонус)

Для экономии времени можно воспользоваться следующим флагом.

Выбрать необходимую псевдолокаль в настройках телефона.

И наблюдать, как едет верстка из-за длинного текста, а некоторые элементы UI упорно не хотят отображаться справа налево.

Более подробную информацию можно прочитать в документации.

Стоит отметить, что псевдолокали не будут работать, если вы подменяете контекст, как в решении выше. Вы ведь подменяете контекст. Поэтому необходимо добавить en-XA и ar-XB в список выбора языка внутри приложения.

На этом все. Хорошей вам локализации и хорошего настроения!

Источник

Русификатор для андроид студио

Скачать Android Studio бесплатно

В ситуации, когда вы хотите создать приложение для Android смартфонов, но при этом у вас не очень уверенные познания в программировании, вам нужно скачать Android Studio для Windows 10. Это бесплатное решение, созданное компанией Google, специально для разработки приложений для ОС Android любой версии. С недавних пор утилита доступна и для Windows 10.

Скачать Android Studio для разработки приложений для Android

Мечтаете создать свое первое мобильное приложение? От мечты до реальности всего один шаг – скачайте Android Studio сегодня, и уже завтра вы сможете стать разработчиком своего первого приложения. Освоить среду разработки можно действительно за сутки. Программа визуально простая, но внутри скрывается мощнейший функционал, который позволяет создать по-настоящему любую программу. Последняя версия Android Studio отличается следующими характеристиками:

Идеально, если вместе с Android Studio, вы скачаете еще и документацию к программе. И хотя сама программа переведена на русский язык, но вряд ли вы сможете с ней быстро разобраться, только если не прибегнете к помощи инструкции. Существуют десятки руководств, так что с этим у вас не будет сложности, и именно в этом ключе вы сможете быстро освоить Android Studio и согласитесь с нами, что это одна из самых простых возможностей создать программу для Андроид телефона.

Android Studio — среда разработки под популярную операционную систему Андроид. Программное обеспечение вышло в 2013 году и развивается по сегодня. В каждой новой версии Android Studio разработчик добавляет увеличивает функционал, оптимизирует процессы и другое.

В комплекте с IDE идет эмулятор, проверяющий корректную работу уже написанных утилит, приложений на разных конфигурациях.

Где можно скачать бесплатно?

Скачать Android Studio последней версии можно с сайта официального разработчика — developer.android.com. Программа работает на базе Windows ОС. Русский язык отсутствует.

Либо напрямую с нашего проекта:

Установка Android Studio

Как пользоваться софтом?

После установки пакета программ проводится настройка Android Studio. При первом запуске утилита задаст вопрос об интеграции пользовательских настроек. Если нет опыта в использовании этой среды разработки, стоит нажать «OK». Можно импортировать свои настройки. Программа по умолчанию запустится в стандартной конфигурации.

Разобравшись с предыдущим окном, пользователь увидит новое, которое показывает прогресс загрузки Android SDK на компьютер. Время полного завершения этого процесса зависит исключительно от скорости интернет-соединения на рабочем ПК.

Загрузку можно остановить, по надобности. После нажмите «Finish». Если закачка SDK прервалась и появилась ошибка — кликните на «Retry». Теперь можете работать с Android Studio.

Создание проекта

Начать путь в Android Studio следует с создания первого проекта. В главном окне, которое открылось после запуска программы, пользователю необходимо выбрать «Start a new Android Studio project». Это инициирует открытие диалогового окна, в котором указывается несколько параметров:

Операционная система Андроид идентифицирует приложения благодаря имени пакета, которое составляется из домена компании и названия проекта.

Следующий шаг — выбор гаджетов, под которые будет разработано приложение:

Минимальная версия API для создания приложений — 16. Хоть Android Studio и предоставляет даже ранние версии на выбор, но современными устройствами они уже не распознаются.

Нажав далее, пользователь попадает на следующую вкладку, где на выбор доступен пункт «Empty Activity». Если целью становится написать приложение с нуля, выбирайте его. Можете ознакомиться и с другими вариантами.

Переходите на следующую вкладку, жмите «Finish». Пройдет некоторое время, прежде чем Android Studio сгенерирует новый проект пользователя. Скорость обработки запросов зависит от производительности ПК.

Файлы проекта

IDE Android Studio никак внешне не отличить от других именитых аналогов. Рабочая область очень схожа с программой Visual от Microsoftt. Среда разработки выполнена в классическом виде. Программистам, не имевшим ранее дело с Android, необходимо привыкнуть к тому, как создаются приложения под нее. Все игры и утилиты — это набор идеально синергирующих между собой компонентов, а не цельный программный код.

К файлам проекта можно отнести и его ресурсы, такие как шрифты, картинки, кэш и документация. Находятся они в папке res, которую найдете в левой части окна.

Визуальный редактор XML

При работе с файлами типа XML, внизу редактора появляются две вкладки: «Text» и «Design». В них можно редактировать код программы, отвечающий за внешний вид, выбирать интересующие пользователя виджеты, добавлять их при помощи перетаскивания на проект.

Использование GRADLE

Android Studio — хорошо продуманная среда разработки, работа с которой приносит только удовольствие. Функционал софта понятно оформлен и упрощен до максимума, чтобы даже у неопытных программистов все получалось.

Инструмент Gradle — то, чего так не хватает во многих других IDE. Благодаря ему все элементы, созданные в ходе развития приложения, объединяются в один APK файл, производится сборка.

Сборка и отладка

Для тестирования приложения в финальной стадии разработки есть два варианта: проверить его непосредственно на смартфоне, планшете или другом целевом устройстве, или прибегнуть к помощи эмулятора.

Чтобы запустить готовую утилиту на Android-устройстве, подключите его к компьютеру, на котором происходит разработка, через USB. Должна быть включена «Отладка по USB» и «Установка приложений из неизвестных источников».

Подключив гаджет к ПК, выберите «Run», а затем «Run App». Далее, откроется окно, в котором нужно выбрать реальное/виртуальное устройство для запуска приложения. После того как выбор будет сделан, проект сразу запустится на гаджете.

Во вкладке Monitors можно проследить за нагрузкой, которую приложение оказывает на смартфон.

ADV Manager

Одно из главных преимуществ Android Studio перед конкурентами — наличие встроенного в пакет эмулятора Android-устройств, на котором можно тестировать уже готовые проекты, корректность работы утилит, находящихся на стадии разработки. Это существенно удобнее, нежели использовать для всех тестов реальное устройство.

Эмулятор Android Studio обладает богатым функционалом. Его достаточно, чтобы проверить работу приложения на разных конфигурациях экрана, смоделировать точные соотношения сторон, нужные разрешения, технические характеристики смартфона, планшета или другого Android-устройства.

Для тестирования на эмуляторе стоит перейти по пути: кнопка «Tools» — «Android» — «ADV Manager». В открывшемся окне нужно выбрать «Create Virtual Device», после чего определить модель устройства, эмуляцию которого программе следует произвести, параллельно скачав для него прошивку.

Для работы с эмулятором потребуется хороший ПК. На нем можно тестировать не только свои утилиты и игры, а и загруженные из других источников.

SDK Manager

Android Studio SDK — инструмент, позволяющий тестировать ПО для Android на определенной версии ОС, или же разрабатывать приложения только для нее. Доступен во вкладке «Tools» — «SDK Manager», в которой находятся все компоненты SDK Manager. Их можно включать/выключать постановкой или устранением флажка соответственно.

Упаковка APK

Android Studio позволяет создать подписанный APK, чтобы в дальнейшем загрузить приложение в Google Play. Для этого кликните на меню «Tools», а в ней пункт «Create signed APK». После, выберите или создайте хранилище ключей — подтверждение того, что именно вы разработали приложение. Это необходимо для Google Play. Созданный на этом этапе файл сохраните и ни в коем случае не теряйте — без него не удастся обновлять приложение в будущем.

Выбрав тип сборки «Release» и нажав кнопку «Finish», создатель завершит разработку приложения на данном этапе. Можно осуществить выход из IDE, перейти к загрузке программы в сеть.

Отзывы о Android Studio

Разработчики приложений для Андроид предпочитают именно эту программу. Согласно отзывам, которые оставляют пользователи IDE, софт дает больше возможностей, предоставляет более гибкую среду разработки, нежели конкуренты. О чем только говорит наличие такого многофункционального эмулятора и еще нескольких инструментов, которые включены в пакет Android Studio! Видно, что с каждым обновлением IDE становится только лучше, в него интегрируют новый функционал, не забывая про старый.

Благодаря продуманному дизайну и простому оформлению инструментов, Android Studio от Google — один из лучших ПО для разработки Android-приложений.

(Скопируйте ссылку и вставьте в новом окне)

Источник

В статье, посвященной ресурсам, мы уже затрагивали эту тему с теоретической точки зрения. Разберем теперь практическую часть. Мы уже умеем пользоваться строковыми ресурсами и меняли строчки, например, Hello, World на Здравствуй, Мир! Но на самом деле это не совсем правильный подход. Для профессионально написанного приложения лучше использовать другой подход. А именно, локализацию.

Напишем приложение, которое будет поддерживать английскую и русскую локализации. По умолчанию будет использоваться английская локализация. В этом случае, если на телефоне не будет найден нужный локализованный ресурс, то будет применяться английский вариант.

Чтобы не усложнять материал, воспользуемся стандартным приложением, который мы изучали в самом начале. Создадим новый проект “LocaleApp”, но на этот раз мы не будем трогать файл strings.xml в каталоге res/values.

Для русской локализации необходимо создать новый подкаталог values-ru в том же каталоге res. Если вы планируете создавать локализацию только для русского языка, то название каталога не трудно запомнить и вы можете создать папку вручную через res | New | Directory. Но вряд ли вы запомните названия других папок. Поэтому покажу способ создания с помощью мастера студии.

Щёлкаем правой кнопкой мыши на папке res и выбираем New | Android resource directory. В диалоговом окне в левой части Available qualifiers: выбираем пункт Locale и переносим его в правую часть Chosen qualifiers: с помощью кнопки с двумя стрелками вправо. В появившейся третьей колонке выбираем нужные языки, например, русский. Вы увидите, что в поле Directory name автоматически появится нужное название папки. Дополнительно вы можете указать и регион в колонке Specific Region Only

В режиме Android вы можете не увидеть созданную папку, поэтому временно переключитесь в режим Project. Скопируйте файл res/values/strings.xml и вставьте его в новую папку. Можете вернуться в прежний режим. Если папка не пуста, то она уже видна.

Изменим его содержание.

В английской версии им соответствуют ресурсы

Запустим приложение и увидим, что текст выводится на русском, если у вас на эмуляторе или реальном устройстве выбраны русские настройки.

Как перейти на американскую локаль? Идём в Настройки→Язык и клавиатура→Выбрать язык. Выбираем английский язык English (United States). Снова запускаем приложение в эмуляторе или на телефоне. Теперь наше приложение будет выглядеть так:

Ресурсы из каталога res/values считаются ресурсами по умолчанию. Они отображаются в том случае, когда система не найдёт ресурсы для текущей локали устройства. В нашем случае, при выборе любого языка, кроме русского будет использоваться res/values. Если мы захотим разделить англичан и американцев, тогда придётся создавать два каталога: res/values-en-rUK и res/values-en-rUS. Обратите внимание, что перед кодом второй части ставится буква ‘r’. Иными словами, мы определяем не только язык, но и регион.

Проведем несколько экспериментов. Удалим из файла res/values-ru/strings.xml строковый ресурс hello_world с текстом Здравствуй, Мир!. Сохраним изменения и запустим проект на устройстве с русским языком. Платформа заменила отсутствующий в локализации ресурс дефолтным английским.

Отсюда можно сделать вывод, что вам необходимо следить за ресурсами по умолчанию. Старайтесь проконтролировать, чтобы ваше приложение всегда содержало все необходимые ресурсы по умолчанию, а уже потом можете начинать локализацию приложения. Для этого вам достаточно будет скопировать файл в новый подкаталог и отредактировать его.

На самом деле локализовать можно не только строковые ресурсы. В разных странах принято рисовать какой-нибудь объект в соответствии со своими традициями, например, изображение почтового ящика. В этом случае вы можете создать каталог /res/drawable-de, в котором будут находиться изображения, предназначенные для немцев.

В коде вы обращаетесь к нужным ресурсам следующим образом:

Система сама подставит нужную строку. Явно указать, что хочется использовать ресурс на конкретном языке, у вас не получится.

Спустя продолжительное время один из читателей подсказал, как всё-таки задействовать локальный ресурс. Объяснять код не буду, сами поймёте, когда наберётесь опыта.

Просмотр и создание локализованных строк в режиме дизайна

Чтобы увидеть, как меняется текст в различных локализованных версиях вашего приложения, необязательно запускать приложение в эмуляторе. Можно в студии на панели инструментов щёлкнуть на значке глобуса и выбрать из выпадающего списка нужный вам пункт (он появится после того, как вы создадите необходимые локализованные ресурсы), и все локализованные строчки сразу поменяются на экране активности.

После того, как вы завершите перевод всех ресурсов, нажимаете на кнопку OK и у вас появится готовая папка с новым файлом strings.xml для выбранной локализации.

Сейчас в студии вместо диалогового окна выводится окно редактора, в котором можно редактировать текст.

Непереводимая игра слов с использованием местных идиоматических выражений

Если вы решили использовать локализацию на разных языках, то можете встретиться с одной проблемой. Предположим, вы перевели только несколько строковых ресурсов и в один прекрасный день решили выложить программу в магазин приложений. Android Studio при сборке подписанного приложения может заругаться, что вы перевели не все строки. Есть два способа обхода проблемы. Вы можете использовать атрибут translatable=”false”, чтобы указать среде разработке, что данная строка не требует перевода:

В окне редактора это сделать проще через флажки в столбце Untranslatable.

Есть ещё один вариант, когда непереводимые строки размещаются не в ресурсе strings.xml, а в другом файле под именем donottranslate.xml.

Когда вы исправите строковые ресурсы, то избавьтесь от ошибок через Project | Clean. и попытайтесь собрать приложение заново.

Поддержка письма справа налево

Арабы и некоторые другие народы используют непривычную для европейцев схему написания текстов справа налево. В Android 4.2 появилась поддержка данного режима. В блоге (англ.) Native RTL support in Android 4.2 рассказано о некоторых вещах по этой теме.

Теперь вы можете писать приложение для израильских военкоматов. Русские призывники в интервью офицерам душевного здоровья часто используют сочетание хатуль мадан (חתול מדען). Теперь вы знаете, как локализовать строки пушкинского стихотворения про кота учёного.

Несколько локалей

В Android 7.0 (API 24) пользователь может установить несколько локалей. В этом случае, если не будут найдены ресурсы для первой локали, то будут искаться ресурсы для второй локали. Таким образом, если француз знает два языка, например, французский и испанский, а в приложение не поддерживает французского, но поддерживает испанский, то пользователь увидит текст на испанском, а не на английском.

Источник

Читайте также:  Выделительные частицы в русском языке таблица
Интересные факты из жизни