Как русифицировать приложение на айфоне

Как изменить язык в конкретном приложении на iOS, не меняя системного

Наверняка вы хоть раз, но сталкивались с необходимостью переключить конкретное приложение на своём iPhone с русского языка на какой-то другой, но не могли этого сделать, потому что iOS применяет системный язык ко всему ПО, не спрашивая вашего разрешения. Исключения составляют только те программы, которые по умолчанию не имеют поддержки русского либо — что редкость — могут похвастать встроенной возможностью изменения языковых настроек. Однако в iOS 13.1 такой проблемы больше не существует.

Переключение языков приложений в iOS

Наряду с массой нововведений, которые появились в iOS 13 и iOS 13.1, Apple решила добавить и возможность смены языковых настроек в конкретных приложениях на усмотрение пользователя. Таким образом очень удобно практиковать изучение нового языка, но при этом иметь возможность взаимодействовать с операционной системой на родном без необходимости переключать его туда-обратно.

Как установить другой язык в приложении

  • Для этого перейдите в “Настройки” — “Основные” — “Язык и регион”;

Как изменить язык в iOS

  • В разделе “Предпочитаемый порядок языков” кнопкой “Добавить язык” добавьте языки или наречия, которые хотите использовать в приложениях;

Настройка языков в iOS

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

Смена языка в приложении

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

Важно понимать, что описанная нами функция предлагает только возможность изменить язык на тот, который уже есть в приложении, не работая в качестве переводчика. Поэтому, если вы хотите перевести приложение какого-нибудь “Яндекс.Такси” на хинди или корейский, сделать этого не получится, поэтому эти языки не поддерживаются им по умолчанию. А вот английский или китайский — пожалуйста. При необходимости можно даже открыть вкладку “Другие языки” и просмотреть все доступные языки и наречия.

Почему нельзя изменить язык в приложении

Кроме того, не удивляйтесь, если какое-то приложение вообще не позволит изменить язык. Дело в том, что далеко не все приложения для iOS позволяют менять язык интерфейса в принципе. Взять хотя бы известный всем “Сбербанк Онлайн”, который работает исключительно на русском языке и не позволяет включить даже английский. Всё дело в том, что разработчики на стадии проектирования приложения просто не озаботились мультиязычностью, а потому использовать его теперь можно только на одном языке — на русском.

Источник

Как изменить язык в любом приложении, оставляя язык системы прежним

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

Как изменить язык в любом приложении, оставляя язык системы прежним

1. Установите дополнительный язык на iPhone или iPad. Для этого зайдите в Настройки → Основные → Язык и регион → Другие языки и выберите языки, которые могут пригодиться для перевода выборочных приложений.

При желании, самом устройстве можно оставить основным русский язык:

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

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

Источник

Как русифицировать приложение на айфоне

Будь в курсе последних новостей из мира гаджетов и технологий

Как изменить язык в любом приложении на iOS 13

В iOS 13 хватает малоизвестных фишек, и одна из них — возможность изменить язык в любом приложении на отличный от системного. К примеру, это может быть нужно, если перевод программы на русский оставляет желать лучшего, или если русский перевод не вмещается в отведенную область и обрезается, как в приложении YouTube:

Для начала вам нужно добавить дополнительный язык на iPhone или iPad. Для этого зайдите в Настройки > Основные > Язык и регион > Другие языки, после чего выберите нужный и оставьте русский язык на устройстве:

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

Источник

Руководство по локализации для iOS

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

Процесс локализации — трудоемкий, а его шаги потихоньку меняются по мере обновления XCode. Этот пост объясняет каждый шаг на основе последней версии XCode (7.3.1).

Переведено в Alconost

Перед началом работ по локализации убедитесь, что выбрали опцию «Использовать базовую интернационализацию» (Use Base Internationalization).

Что такое базовая интернационализация?

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

Это — так называемый базовый (Base) язык. Если вы делаете приложение для глобального рынка, в ваших базовых языковых ресурсах, как правило, будут тексты на английском языке.

Добавление новой локализации

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

Выберите файл своего проекта в навигаторе (Project Navigator), затем выберите свой проект в списках проектов (Project) и целевых параметров (Targets). Откройте вкладку «Информация» (Info) и нажмите кнопку «+» под блоком «Локализации» (Localizations). Теперь выберите язык, который хотите поддерживать, из представленных в выпадающем списке.

XCode откроет диалог с набором ресурсов, которые необходимо добавить для нового языка. Нажатие кнопки «Завершить» (Finish) создаст эти файлы в папке нового языкового проекта под названием [новый язык].lproj. (В этом примере добавлена поддержка японского языка, соответственно, создана папка ja.lproj.)

Теперь у нас есть структура файлов в папке проекта, как в примере ниже.

Где файл Localizable.strings?

Файл Localizable.strings — там, где вы добавляете данные перевода как пары «ключ/значение».
Ранние версии XCode по умолчанию генерировали файл Localizable.strings, копии которого можно было легко создавать для других языков.

Последние версии XCode не создают файл Localizable.strings по умолчанию.

Чтобы добавить файл Localizable.strings, выберите File → New → File, а затем файл Strings (Strings File) на вкладке ресурсов (Resource) для iOS, задайте имя Localizable.strings и создайте файл.

Теперь у вас есть файл Localizable.strings для базового (Base) языка, как в примере ниже.

Чтобы добавить Localizable.strings для японского языка, выберите японский (Japanese) в обозревателе (File Inspector). Это создаст новый файл Localizable.strings file в папке ja.lproj.

Теперь у нас есть два файла Localizable.strings: один в папке Base.lproj, другой — в папке ja.lproj.

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

Ниже — пример добавления «Welcome» = «Welcome»;

Левая часть — это так называемый ключ, с помощью которого потом метод NSLocalizedString извлекает текст (значение) из правой части. Так выглядит этот тип данных — пары «ключ/значение».

Ниже — пример метода NSLocalizedString. Мы устанавливаем ключ как первый параметр метода, таким образом позволяя ему извлечь соответствующее значение из файла Localizable.strings и вернуть его. В этом примере мы получаем локализованные строки для заголовка, сообщения и кнопок уведомления.

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

Следующий шаг: добавляем тексты на японском языке в файл Localizable.strings в папке ja.lproj. Используем те же ключи, но заменяем значения на соответствующие переводы на японский язык.

Затем в симуляторе iOS переключаем язык телефона на японский, запускаем приложение и видим уведомление с текстами на японском языке.

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

Чтобы сделать это, выберите Edit Scheme из выпадающего меню в левом верхнем углу окна XCode и поменяйте язык приложения (Application Language) с системного (System Language) на японский (Japanese). (Если потерялись, смотрите на скриншот ниже.)

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

Локализация сторибордов

Что ж, теперь мы знаем, как извлечь локализованные тексты с помощью NSLocalizedString и как подготовить данные в файлах Localizalbe.strings.

Этого достаточно, чтобы программно показывать локализованные тексты пользователям.
Следующий шаг — поддержка локализации текстов, заданных в сторибордах (Storyboards), например, названий кнопок. Если вы задаете названия кнопок или ярлыков в сторибордах и не меняете эти тексты программно в контроллерах представлений (ViewControllers), вам придется делать локализацию ваших .storyboard-файлов.

Чтобы добавить данные перевода к словам, используемым в сторибордах, дла начала выберите файл сториборда в навигаторе (Project Navigator), затем найдите и добавьте японский (Japanese) в обозреватель (File Inspector) справа. Это создаст файл [StoryboardFileName].strings в папке ja.lproj. В примере ниже для файла Main.storyboard создан файл Main.strings (Japanese).

В файле Main.strings вы увидите нечто подобное.

Замените часть «Get Started» на соответствующую японскую фразу.

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

Что не так с файлами [Storyboard].strings

Единственная проблема в том, что файл Main.strings не обновляется, когда вы добавляете новые компоненты пользовательского интерфейса в файл сториборда.

Потому вам всегда придется сначала определиться с компонентами интерфейса и только потом создавать Main.strings, включая, например, японскую локализацию в обозревателе (File Inspector).

Локализация названия приложения

Чтобы локализовать название приложения или что-нибудь другое из файла Info.plist, создайте файл InfoPlist.strings.

Выберите Go to File → New → File, затем файл Strings (Strings File) на вкладке ресурсов (Resource) для iOS и задайте имя InfoPlist.strings. Сохраните файл InfoPlist.strings в папке Base.lproj. (Теперь XCode отнесет этот файл InfoPlist.strings к базовому языку.)

Обычно мы локализуем эти два значения в файле info.plist:

  • CFBundleDisplayName — название приложения в том виде, в котором оно отображается на главном экране;
  • NSHumanReadableCopyright — информация об авторских правах (например: 2014, Goldrush Computing Inc. Все права защищены).

Укажите название приложения и информацию об авторских правах для этих ключей, как в примере ниже.

Затем в обозревателе (File Inspector) выберите японский, чтобы добавить InfoPlist.strings в папку ja.lproj (для этого файл InfoPlist.strings должен оставаться выделенным).

В файле InfoPlist.strings (Japanese), замените значения переводами на японский, как в примере.

Запустите приложение и посмотрите, правильно ли название вашего приложения локализовано на японский.

Вот и весь процесс локализации приложения на другой язык.

Новый способ локализации приложений

Я написал множество приложений и много работал над локализацией. Она ощутимо отнимает рабочее время, поэтому я всегда искал способы упростить её. И наконец мы создали инструмент, который облегчает процесс локализации — он называется InAppTranslation. Если вам интересно, заходите на наш сайт — inapptranslation.com.

Перевод статьи выполнен в Alconost.

Alconost занимается локализацией приложений, игр и сайтов на 60 языков. Переводчики-носители языка, лингвистическое тестирование, облачная платформа с API, непрерывная локализация, менеджеры проектов 24/7, любые форматы строковых ресурсов.

Мы также делаем рекламные и обучающие видеоролики — для сайтов, продающие, имиджевые, рекламные, обучающие, тизеры, эксплейнеры, трейлеры для Google Play и App Store.

Источник

Mac OS X Hints
Adblock
detector