page.title=Контрольный список локализации page.metaDescription=Воспользуйтесь преимуществами глобальной аудитории пользователей Android и Google Play. Этот контрольный список позволяет получить представление о том, как представить ваш продукт на рынках других стран. meta.tags="localizing, publishing, disttools" page.tags="local, l10n, translation, language" page.image=/distribute/images/localization-checklist.jpg @jd:body
Android и Google Play позволяют предложить ваши приложения глобальной аудитории с доступным для адресации контингентом пользователей, который очень быстро растет в таких странах, как Япония, Корея, Индия, Бразилия и Россия. Мы настоятельно рекомендуем локализовать приложения, поскольку это позволяет обеспечить максимальный потенциал их распространения и получить оценки от пользователей всего мира.
Процесс локализации включает в себя выполнение различных задач в цикле разработки приложения, поэтому важно спланировать его заранее. Этот документ помогает определить ключевые аспекты локализации и подготовить ваше приложение к успешному глобальному выпуску в Google Play.
Наиболее простым, но важным шагом в подготовке локализации является определение стран и языков для распространения приложения. Локализация приложений особенно важна для стран с большими возможностями рынка, но слабым распространением английского или другого международного языка.
Вы можете управлять тремя основными параметрами для зарубежных пользователей: страна, язык и языковые настройки. Ключевым фактором для локализации является выбор языка (языковые настройки также могут быть важны, поскольку они определяют различия в форматах дат, времени, валют и другой подобной информации). Пользователи управляют выбором языка и языковых настроек на своих устройствах Android, которые, в свою очередь, влияют на отображение вашего приложения на экране.
Обычно вы выбираете поддерживаемые для распространения страны с учетом общего размера и возможностей рынка, категории приложения, конкурентной среды, местных ценовых и финансовых факторов и т. д. Затем на основе выбора стран вы определяете языки, которые должны поддерживаться в ваших приложениях.
После этого вы можете решить, следует ли выполнять локализацию на все или только на некоторые языки выбранной страны. Имеет смысл начать с основного регионального языка, добавляя остальные по мере увеличения количества пользователей.
Определив поддерживаемые языки, вы можете ориентировать на эти рынки свои процессы разработки, перевода, тестирования и маркетинга.
После определения намеченных для локализации языков оцените свои потребности для их поддержки в своих приложениях и заранее спланируйте работу. Следует учесть расширение лексики, требования к написанию, ограничению интервалов между знаками и переноса слов, поддержку написания слева направо и справа налево, а также другие потенциальные факторы каждого языка.
При создании макетов обеспечьте запас пространства в дизайне любых элементов интерфейса, которые содержат текст. Для других языков рекомендуется оставлять больше места, чем требовалось исходному языку (как правило, добавляют до 30%).
Кроме того, у элементов должна быть возможность горизонтального или вертикального расширения для размещения варьирующихся по ширине и высоте строк интерфейса или текста ввода. Строки текста на любом из поддерживаемых языков не должны выходить за границы экрана.
Продуманный дизайн интерфейса обычно позволяет использовать один набор макетов для всех поддерживаемых языков. Дополнительную информацию см. в документе Создание гибкого интерфейса пользователя.
Если ваш интерфейс пользователя не может вместить текст на каком-либо из поддерживаемых языков, вы можете создать альтернативный макет только для этого языка. Android позволяет декларировать наборы макетов и других загружаемых ресурсов для конкретных языков, языковых настроек, размеров экрана и других характеристик, просто отмечая их соответствующими квалификаторами ресурсов. Хотя альтернативным макетам присуща некая степень гибкости, они могут со временем усложнить сопровождение ваших приложений. В целом, более предпочтительным является использование одного, более гибкого макета.
При распространении в странах, в которых используется написание справа налево (RTL), следует учесть реализацию максимальной поддержки отображения и редактирования макетов и текста RTL.
В Android 4.1 появилась ограниченная поддержка двунаправленного текста, которая позволяет приложениям отображать и редактировать текст как с написанием слева направо (LTR), так и справа налево (RTL). В Android 4.2 была добавлена полная поддержка макетов RTL, включая их зеркальное отображение, поэтому вы можете предоставить одинаковые удобные интерфейсы для всех своих пользователей.
Для пользователей Android 4.2 можно, как минимум, просто добавить базовое зеркальное отображение макета RTL, что в значительной степени удовлетворяет потребности пользователей, использующих написание справа налево.
При указании в приложении дат, времени, чисел, денежных единиц и других данных, которые зависят от языковых настроек, обязательно используйте системные форматы вместо форматов приложения. Помните, что разделители тысяч, десятичные разделители или знаки процента могут различаться в зависимости от языковых настроек.
Android предоставляет различные инструменты для форматирования и преобразования шаблонов языковых настроек, такие как DateUtils и DateFormat для дат, String.format() и DecimalFormat для чисел и денежных единиц, PhoneNumberUtils для телефонных номеров и другие.
Жесткое использование форматов на основании предполагаемых языковых настроек пользователя может привести к проблемам при изменении пользователем своих языковых настроек. Настоятельно рекомендуется использовать системные форматы и инструменты.
Обеспечьте корректную работу приложений вне зависимости от языка или языковой настройки, предоставив полный набор ресурсов, используемых по умолчанию. Приложение использует по умолчанию ресурсы, не отмеченные квалификаторами какого-либо языка или языковой настройки, например, хранящиеся в папках res/drawable/ и res/values/. Если приложение пытается загрузить ресурс, который недоступен для текущего языка или набора по умолчанию, возникает сбой.
Вне зависимости от языка, используемого по умолчанию в ваших приложениях, разместите соответствующие макеты, графические элементы и строки в папках ресурсов по умолчанию без квалификаторов языка или языковых настроек.
Эффективное управление строками интерфейса позволяет упростить процесс локализации и создать удобный интерфейс для пользователей.
При создании приложений не определяйте строки внутри кода. Вместо этого декларируйте все строки в качестве ресурсов внутри файла strings.xml – это упростит процессы обновления и локализации. Строки в файле strings.xml можно извлечь, перевести и интегрировать обратно в приложение (с соответствующими квалификаторами), не изменяя скомпилированный код.
В случае создания изображений с текстом также поместите строки в файл strings.xml и создайте изображения заново после перевода.
При проектировании и разработке интерфейсов уделите особое внимание тому, как вы обращаетесь к пользователю. Используйте лаконичные, сжатые выражения, которые понятны, но кратки, и старайтесь поддерживать единообразный стиль во всех интерфейсах.
Обязательно изучите рекомендации по дизайну для Android относительно стиля и выбора слов и следуйте им. Это позволит вашим приложениям выглядеть более привлекательными и поможет пользователям быстрее разобраться в интерфейсе.
Также старайтесь всегда использовать стандартные термины Android для элементов интерфейса, такие как "панель действий", "меню параметров", "системная панель", "уведомления" и т. п. Корректное и согласованное использование терминов Android упрощает перевод и улучшает качество конечного продукта.
При декларации строк в файле strings.xml обязательно опишите контекст, в котором они используются. Эта информация очень важна для переводчиков, и позволяет улучшить качество перевода, а также помогает более эффективно управлять строками впоследствии.
Пример:
<!-- The action for submitting a form. This text is on a button that can fit 30 chars --> <string name="login_submit_button">Sign in</string>
Рекомендуется предоставить следующую информацию о контексте:
Для чего эта строка? Когда или где она видна пользователю?
В каком месте макета она находится? Например, перевод для кнопки менее гибок, чем для текстового окна.
Строки часто содержат текст, который не подлежит переводу на другие языки. Примерами могут служить часть кода, заполнитель для значения, специальный символ или имя. При подготовке строк к переводу найдите и отметьте текст, который должен остаться без перевода, чтобы переводчики его не изменяли.
Чтобы отметить текст, не подлежащий переводу, используйте
тег-заполнитель <xliff:g>
. Ниже приведен пример тега, который
защищает текст "%1$s" от изменения в процессе перевода (в противном случае сообщение может быть
выведено с ошибкой).
<string name="countdown"> <xliff:g id="time" example="5 days>%1$s</xliff:g>until holiday </string>
При декларации тега-заполнителя всегда добавляйте атрибут id, поясняющий назначение заполнителя. Если значение заполнителя будет впоследствии заменено в приложениях, обязательно добавьте пример атрибута, поясняющий предполагаемое использование.
Ниже приведены еще несколько примеров тегов-заполнителей.
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <!-- Example placeholder for a special unicode symbol --> <string name="star_rating">Check out our 5 <xliff:g id="star">\u2605</xliff:g> </string> <!-- Example placeholder for a for a URL --> <string name="app_homeurl"> Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g> </string> <!-- Example placeholder for a name --> <string name="prod_name"> Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g> </string> <!-- Example placeholder for a literal --> <string name="promo_message"> Please use the "<xliff:g id="promotion_code">ABCDEFG</xliff:g>” to get a discount. </string> ... </resources>
Перевод строк интерфейса приложения и ресурсов на поддерживаемые языки является ключевой стадией локализации, требующей особого внимания и планирования.
Чтобы обеспечить высокое качество перевода, повышающего ценность вашего приложения, рекомендуется поручить эту работу профессиональному переводчику (см. Заказ профессиональных переводов через Google Play). Машинный перевод также является возможным вариантом, однако он вряд ли сможет обеспечить достаточно хорошее качество локализации.
Качество перевода отчасти зависит от исходного текста, поэтому позаботьтесь о том, чтобы ваш файл strings.xml был хорошо организован, точен и снабжен подробными комментариями.
Ниже приведены несколько рекомендаций по подготовке строк к переводу.
Обеспечьте корректное и согласованное форматирование строк.
Следуйте рекомендациям, приведенным выше в разделе Управление строками для локализации.
Удалите ненужные строки из файла strings.xml.
Добавьте в файл комментарии с информацией о владельце, происхождении и версии файла, а также все специальные инструкции для переводчиков.
При наличии существующих переводов включите их в ZIP-архив или другой пакет, отправляемый переводчикам.
Определите графические элементы или другие ресурсы, требующие перевода, и включите их в пакет для переводчиков.
Учтите необходимость перевода данных для каталога (название и описание приложения, примечания к выпуску и т. п.), а также других маркетинговых материалов, требуемых для распространения в других странах.
Составьте список терминологии, поясняющий значение и использование ключевых терминов, встречающихся для вашего продукта, рынка или используемой технологии. Включите этот список в пакет для переводчиков.
На ранних стадиях разработки обратитесь к профессиональным переводчикам, чтобы получить представление о примерной стоимости и сроках выполнения перевода. Не забудьте учесть в стоимости несколько этапов улучшения перевода. Вы можете найти поставщиков услуг перевода в Интернете или воспользоваться сервисами для перевода непосредственно из консоли разработчика Google Play (см. Заказ профессиональных переводов через Google Play).
После завершения перевода выполните его предварительную проверку. Проверьте, все ли файлы переведены, имеются ли потенциальные проблемы кодировки и не повреждены ли форматы деклараций.
Если все выглядит хорошо, аккуратно переместите локализованные папки и файлы обратно в ресурсы вашего приложения. Обязательно отметьте папки соответствующими квалификаторами языка и языковых настроек для их последующей корректной загрузки.
После включения переводов в ресурсы начните тестирование локализованного приложения.
Сервис перевода приложений Google Play помогает быстро найти поставщика и заказать у него перевод приложения. В консоли разработчика можно просмотреть список сторонних поставщиков, предварительно проверенных Google и предлагающих качественный перевод по разумным ценам. Здесь можно выгрузить строки для перевода, выбрать языки, на которые вы хотите перевести приложение, и выбрать поставщика услуг перевода с учетом предлагаемых сроков и цен.
После заказа перевода вы получите сообщение электронной почты от вашего поставщика. Ваш заказ на перевод является прямым деловым соглашением между вами и вашим поставщиком. Вы будете напрямую работать с поставщиком с целью управления процессом перевода и поставками переведенных материалов, а также для решения любых вопросов поддержки.
После получения и переноса в приложения переведенных строк и ресурсов необходимо проверить приложения и убедиться, что они готовы к распространению среди пользователей в других странах.
Посредством тестирования вручную вы можете обнаружить проблемы локализации в макетах и строках, способные повлиять на восприятие пользователей и, в конечном итоге, на пользовательский рейтинг приложения.
Для тестирования локализованного приложения вам потребуется создать среду, состоящую из нескольких устройств (или виртуальных устройств) с разными размерами экрана, выбранных с учетом намеченных рынков и форм-факторов. Следует учесть, что выбор устройств для конкретных регионов может различаться. По возможности подберите тестовые устройства в соответствии с теми, которые доступны пользователям.
На каждом тестовом устройстве выберите язык или языковые настройки. Установите и запустите приложение, затем пройдите по всем переходам интерфейса, диалогам и взаимодействиям с пользователем. Введите текст, где этого требует приложение. Обратите внимание на следующие возможные проблемы:
обрезанный текст или выход текста за границы элементов интерфейса или экрана;
неверные переносы строк;
некорректные переносы слов или ошибки пунктуации;
неверная сортировка по алфавиту;
некорректное расположение макета или направление текста;
непереведенный текст — если вместо переведенных строк отображаются исходные строки, возможно, вы могли пропустить их при выборе строк для перевода или отметить папку ресурсов неправильным квалификатором языка.
В тех случаях, когда строки после перевода стали длиннее и не помещаются в макеты, следует попытаться упростить исходный или переведенный текст, либо исправить исходные макеты. Если проблему не удалось решить ни одним из этих способов, можно создать специальный макет для этого языка.
После проверки приложений со всеми поддерживаемыми вами языками и языковыми настройками обязательно протестируйте их еще раз с неподдерживаемым языком и языковой настройкой. Это поможет убедиться в том, что приложения включают полный набор строк и ресурсов по умолчанию и могут использоваться всеми пользователями вне зависимости от их предпочитаемого языка.
В процессе тестирования или после него рекомендуется выполнить проверку локализованных приложений с привлечением носителей языка. Одним из способов такой проверки является бета-тестирование среди региональных пользователей, которое может быть организовано с помощью Google Play.
Перевод приложений является ключевым этапом локализации, но чтобы помочь вашему продукту привлечь пользователей и стать популярным, вы должны подготовиться к выпуску в поддерживаемых странах и создать расширенный план выпуска и маркетинга для зарубежных пользователей.
Каталог Google Play является местом, где пользователи из других стран получают первое впечатление о приложении. Здесь вы должны выделить достоинства ваших приложений для всех пользователей. Локализуйте свой каталог в консоли разработчика, включая:
Локализация каталога в значительной степени определяет успех приложения на международных рынках. Управление локализованным каталогом осуществляется в консоли разработчика.
Задолго до выпуска решите, какими будут название и описание приложения, рекламный текст, маркетинговые названия и программы, а также другой текст и графические изображения. Отправьте текст каталога и изображений на перевод заранее, чтобы они были готовы к началу бета-тестирования. Готовый переведенный текст можно добавить в каталог с помощью консоли разработчика.
Для перевода каталога вы можете использовать сервис перевода приложений в Google Play. Подготовьте файл в формате XML с информацией вашего каталога и выгрузите его таким же образом, как и файл strings.xml (см. разделЗаказ профессиональных переводов через Google Play).
Ознакомьте пользователей с вашим локализованным приложением, к созданию которого вы приложили столько усилий. Сделайте снимки экрана вашего интерфейса на каждом языке для телефонов и планшетов с 7- и 10-дюймовыми экранами. Вы можете выгрузить в консоль разработчика снимки экрана для каждого поддерживаемого языка. Эти изображения представляют большую ценность для пользователей, просматривающих ваш каталог на других языках.
Также весьма важным является создание локализованных версий рекламной графики и видеороликов. Например, иллюстрация функций приложения может содержать текст, который должен быть переведен для максимальной эффективности материала, также можете потребоваться использование разных визуальных подходов в оформлении для разных стран. Можно создать разные версии рекламных материалов для каждого языка и загрузить их в консоль разработчика. Если предлагается рекламный видеоролик, можно создать его локализованные версии, а затем добавить ссылку на нужный видеофайл для каждого языка, поддерживаемого приложением.
Google Play позволяет организовать группы альфа- и бета-тестеров в любых уголках мира. Обязательно ознакомьтесь с этой эффективной возможностью при своем следующем посещении консоли разработчика.
Перед выпуском приложений всегда полезно получить практические отзывы от пользователей. Их ценность становится еще больше при выпуске приложения на новом языке, в новой стране или регионе. В этих случаях настоятельно рекомендуется распространить предварительную версию приложения среди пользователей на ключевых рынках, предоставив им простые средства передачи своих отзывов и сообщений об ошибках.
Google Play может помочь в организации бета-тестирования ваших приложений. После входа в консоль разработчика и выгрузки пакета APK можно настроить группы пользователей для альфа- и бета-тестирования приложения. Сначала можно организовать небольшую группу альфа-тестирования, а затем перейти к более многочисленной группе бета-тестирования.
Добавленные пользователи получают доступ к вашей странице в каталоге и могут установить приложение. Пользователи альфа- и бета-версий не могут оставлять отзывы или оценки, поэтому вы не рискуете своим рейтингом в Google Play. В то же время это означает, что вашим тестерам нужен механизм передачи отзывов, в качестве которого мы рекомендуем использовать страницу Google+ или группу Google.
Полученные отзывы помогут исправить пользовательский интерфейс, перевод и страницу в каталоге, обеспечив максимальное удобство для будущих пользователей приложения.
Для максимального охвата аудитории в разных странах рассмотрите возможность международной маркетинговой или рекламной кампании. Масштаб кампании может меняться в зависимости от выделенного бюджета, но, как правило, наиболее эффективным и продуктивным является маркетинг на уровне региона или страны во время выпуска приложения или сразу после него.
Если вы готовите международную маркетинговую кампанию, обязательно включите в нее локализованный значок Google Play, который укажет пользователям, где можно найти ваше приложение. С помощью генератора значков вы можете быстро создать локализованные значки, которые можно использовать на веб-сайтах или в рекламных материалах. Для значков также доступны изображения с высоким разрешением.
Если вы используете снимки экрана ваших приложений, работающих на устройствах Android, сделайте их более привлекательными и отражающими вид новейших устройств. Для создания качественных рекламных материалов используйте генератор изображений устройства, позволяющий путем перетаскивания снимка экрана получить его изображение на устройстве Nexus.
При подготовке к выпуску обязательно зайдите в консоль разработчика и проверьте подсказки по оптимизации вашего приложения. Эти подсказки позволяют узнать о недостающих частях локализованного каталога и содержат другие полезные напоминания для успешного выпуска локализованного приложения.
После выпуска приложений в других странах следует подготовиться к поддержке пользователей на разных языках и в разных часовых поясах. Степень поддержки зарубежных пользователей зависит от вашего бюджета, но вы должны, как минимум, внимательно следить за своими рейтингами, отзывами и статистикой загрузок после выпуска.
Вот несколько рекомендаций.
Используйте статистику приложения в консоли разработчика для сравнения показателей загрузок, установок, удалений приложения и рейтингов по разным языкам и странам. Если показатели загрузок или рейтингов не поднимаются для каких-либо конкретных языков или стран, обдумайте варианты улучшения вашего продукта или изменения стратегии маркетинга.
Регулярно проверяйте отзывы. Google Play автоматически переводит для вас все отзывы пользователей, поэтому вы всегда можете узнать мнения зарубежных пользователей о ваших приложениях, какие функции им нравятся и какие проблемы им мешают. Просматривая отзывы, вы можете заметить технические проблемы, которые могут возникать у пользователей какой-либо конкретной страны, после чего вы можете исправить и обновить свои приложения.
Старайтесь по возможности отвечать на отзывы. Рекомендуется общаться с пользователями в других странах на их родных языках или на общепринятом, если это возможно. Вы также можете попытаться использовать инструменты автоматического перевода, хотя результаты в этом случае будут непредсказуемы. Если ваши приложения становятся очень популярными для какого-либо языка, рассмотрите возможность организации поддержки с участием носителей языка.
На вашем веб-сайте обязательно должны быть ссылки на все ресурсы поддержки. Рассмотрите возможность создания для конкретных языков групп пользователей, сообществ Google+ или других форумов поддержки.
Следуя этим рекомендациям при локализации приложений, организации рекламной и маркетинговой кампаний среди пользователей в других странах, а также обеспечении текущей поддержки, вы можете привлечь многих новых и сохранить существующих пользователей своих приложений.
Обязательно изучите Контрольный список выпуска приложения, чтобы получить более подробную информацию о планировании, создании и выпуске вашего приложения в Google Play.