Как русифицировать Android без Root с помощью ADB

Localization → Community +1 015 30 июня 2015

Описание услуги

После покупки шаблона скрипта или плагина вы столкнулись что нет родного вам языка ? не проблема- я переведу его за вас.

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

Не произвожу перевод зашифрованных текстов .

Объём услуги

в услугу входит перевод файлов локализации до 800 строк

Необходимая информация для начала работы

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

Ресурсы из папки res/values

В данном уроке мы познакомимся только с ресурсами, которые находятся в папке res: строки, цвета, стили, размеры. Полную информацию о ресурсах мы будем проходить в следующем модуле, но если вы хотите ознакомиться сейчас, то вы можете посмотреть на сайте официальной документации.

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

Ресурсы из папки res/values

Вот как выглядит наш проект. Нажмём на папку values и посмотрим, что в ней находится:

Видим три файла:

  • – содержит в себе все цвета.
  • – хранит все строковые ресурсы.
  • – и все стили приложения.
Ресурсы из папки res/values

Хранение таких данных в отдельных ресурсах дает нам гибкость и удобство при работе с проектом. Мы рассмотрим преимущества на примере локализации строковых ресурсов.

Читайте также:  ТОП-11 функций Android 10

Получение языковых строк

Вы можете получить строки из языкового файла с помощью функции PHPtrans(). Метод PHPtrans() принимает файл и ключ языковой строки первым аргументом. Например, давайте получим языковую строку welcome из файла resources/lang/:

PHP

echo trans(»);

Конечно, если вы используете шаблонизатор Blade, то для получения языковой строки можете использовать синтаксис {{ }} или директиву PHP@lang (для версии 5.2 и выше):

PHP

{{ trans(») }}@lang(»)

Если строка не найдена, то метод PHPtrans() вернёт её имя (ключ). В нашем примере это будет

+ 5.0

добавлено в 5.0 ()

Получение строк из языкового файла

PHP

echo Lang::get(»);

Первый аргумент метода PHPget() — имя языкового файла, а затем указывается имя строки, которую нужно получить.

Если строка не найдена, то метод PHPget() вернёт её имя (ключ).

Замена частей в строках

Если хотите, задайте место для замены в языковой строке. Все места для замены начинаются с двоеточия (:). Например, вы можете задать сообщение приветствия с использованием замены для имени:

PHP

‘welcome’ => ‘Welcome, :name’,

Для подстановки значения при получении языковой строки передайте массив замен вторым аргументом метода PHPtrans():

PHP

echo trans(», [‘name’ => ‘dayle’]); + 5.2

добавлено в 5.2 ()

Подставляемое значение будет преобразовано в соответствии с тем, как задано место для замены (все символы заглавные или только первый):

PHP

‘welcome’ => ‘Welcome, :NAME’, // Welcome, DAYLE‘goodbye’ => ‘Goodbye, :Name’, // Goodbye, Dayle + 5.0

добавлено в 5.0 ()

PHP

echo Lang::get(», [‘name’ => ‘Dayle’]);

Проверка существования языковой строки

Читайте также:  Что такое файл APK – как его использовать на Android, Windows и Mac

PHP

if (Lang::has(»)){ //}

Что такое локализация?

Локализация (также упоминается как l10n) подразумевает, что продукт в языковом и культурном плане соответствует той области, где он будет использоваться и продаваться. Эти изменения видны покупателю продукта или услуги и связанны с ними в культурном коннотативном плане.

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

Русификация Android с помощью ADB и Morelocale2

Подключите телефон к ПК. Если всё правильно, должно появится окошко разрешить отладку по USB на телефоне (если этого не появилось, значит НЕ установлены драйвера ADB). Нажмите OK или ДА. Если всё правильно, должно появится окошко — Разрешить отладку по USB на телефоне Теперь на ПК, откройте командную строку и введите CMD (Win+R — CMD). Вводим команду adb shell pm grant _ _CONFIGURATION Если появилась ошибка Error: device unauthorized, значит вы не выставили на телефоне разрешить подключение через USB DEBUGGING (ALLOW USB DEBUGGING) Откройте программу Morelocale2 на телефоне, загруженную с Google play. Выбираем Русский Язык. Откройте программу Morelocale2 на телефоне, загруженную с Google play. Выбираем Русский Язык. Если всё сделано правильно, ваша система русифицирована и все приложения стали на русском языке.

Создание POT файла

.pot файл — это шаблон перевода. Это прям копия .po файла, только когда не переведена ни одна строка. Т.е. все строки перевода получены из файлов проекта, но еще ничего не переведено.

Читайте также:  Как обновить Айфон 4 до iOS 9 интересно многим

Из вышесказанного следует, чтобы создать POT файл нужно пройти всю процедуру по созданию .po файла, и под конец ничего не переводить, а зайти в Файл > Сохранить как и сохранить файл с расширением .pot.

Создать POT файл можно еще проще. Взять .po файл и поменять ему расширение на .pot. Это грубый метод, но такой файл с переведенными строками, тоже можно использовать как шаблон для создания перевода на любой язык (по крайней мере так работает Poedit).

Зачем нужен .pot файл? Для того, чтобы был какой-то один файл, в котором всегда актуальные строки перевода. Чтобы использовать его как основу для создания перевода на очередной язык.

Например, если PO и MO файлы перевода размещаются в глобальную папку переводов, то мы не можем закинуть PO файл в программу и нажать «Обновить из кода», потому в PO файле скорее всего путь до файлов плагина будет неправильный (или его там вообще не будет) и строки перевода обновиться не смогут. В этом случае используется POT файл, который всегда должен лежать в папке плагина и при изменении кода в нем нужно обновлять строки перевода, так мы всегда будем иметь актуальные строки для перевода.

Повторюсь: если PO файл лежит в папке плагина, то POT файл не нужен, перевод можно создать из PO файла.

меню