Предисловие
В современном мире спрос на мобильные приложения, которыми пользуются люди из разных стран и регионов, значительно увеличился. Для разработчиков важно сделать свои приложения доступными на нескольких языках. Локализация приложения может предложить много преимуществ:
Расширение аудитории: Локализация вашего приложения вы можете охватить пользователей, которые не могут говорить на языке вашего приложения по умолчанию. Это может помочь вам подключиться на новые рынки и увеличить вашу пользовательскую базу.
Улучшение пользовательского опыта: Пользователи с большей вероятностью будут использовать и наслаждаться приложением, которое доступно на их родном языке. Локализация вашего приложения может помочь вам обеспечить лучший пользовательский опыт, что может привести к лучшим обзорам, рейтингам и показателям удержания. Локализация вашего приложения может дать вам конкурентное преимущество в регионах, где ваши конкуренты, возможно, не локализовали свои приложения.
Увеличение доходов: Локализация вашего приложения может привести к увеличению доходов, поскольку пользователи с большей вероятностью будут делать покупки в приложении или оплатить подписки, если приложение доступно на их родном языке.
Но есть также несколько проблем и потенциальных проблем, с которыми могут столкнуться разработчики. Локализация может занять много времени и ресурсов, особенно, для приложений с большим количеством контента и длинным списком поддерживаемых языков.
Но мы бы не были разработчиками, если бы пытались всегда все автоматизировать. Автоматизированная локализация может быстро и эффективно переводить контент, снизить затраты, связанные с ручным переводом, например, наем профессиональных переводчиков или выделение внутренних ресурсов для этой задачи. Это особенно эффективно, если приложение создается одним разработчиком.
Подготовьте свой проект
Я не буду вдаваться в подробности о том, как локализация строк работает в xcode проектах, по этому вопросу уже есть много других учебных пособий. Я только выделю несколько ключевых шагов:
Создайте файл Localizable.strings и заполните его строками, которые вы хотите локализовать.
/* optional description */ "[key]" = "[string]"; /* Example: */ "welcome text" = "Welcome to XCodelocalize";
Перейдите в настройки файла проекта, добавьте желаемые языки. Apple рекомендует EFIGS (английский французский итальянский немецкий испанский) + китайский язык в качестве основы.
Создайте файлы Localizable.strings для всех выбранных языков. Скорее всего, вы так же захотите локализовать файлы plist, storyboard и intentdefinition.
Установка XCodeLocalize
Неожиданно, инструмент для iOS разработки оказался написанным на питоне, так что убедитесь, что у вас есть python 3.9+
После этого вы можете установить xcodelocalize с помощью pip:
pip3 install xcodelocalize
Также доступна установка из .whl файла на странице релизов или с помощью poetry из исходников.
Запустите автоматическую локализацию
cd
к корневой папке проекта и запустите
xcodelocalize [OPTIONS]
или
python3 -m xcodelocalize [OPTIONS]
Параметры
--base-language
: код языка, с которого будут переведены все строки. [по умолчанию: 'en']--override / --no-override
: булево значение; указывает, будут ли переведены строки, которые уже существуют в файле. Перевести, еслиoverride
; пропустить, еслиno-override
. [по умолчанию: no-override]--format-base / --no-format-base
: сортировать строки base файла по ключу. [по умолчанию: no-format-base]--file
: Имена .strings файлов для перевода. Можно указать несколько файлов. Если не указано, все файлы будут переведены. [по умолчанию: None]
Пример:xcodelocalize --file InfoPlist xcodelocalize --file InfoPlist --file MainStoryboard --file Localizable
--key
: Ключи, которые должны быть переведены. Можно указать несколько ключей. Если не указано, все будут переведены. [по умолчанию: None]--language
: Код языков, которые будут переведены. Допускается множество значений. Если не указано, все файлы будут переведены. [по умолчанию: None]--log-level
: Один из [progress|errors|group|string]. [по умолчанию: group]--help
: Информация о параметрах
Автоматизация
Вы можете перейти в Target -> Build Phases -> New Run Script Phase
в вашем проекте Xcode и ввести xcodelocalize
. Это будет переводить необходимые строки во время сборки и ваши файлы всегда будут локализованы.
Заключение
Теперь вы знаете, как быстро локализовать свои iOS приложения. Поставьте звезду репозиторию, если вам понравилось.