CyanogenMod: перевести проект - PullRequest
7 голосов
/ 22 февраля 2011

Я перевел проект в CyanogenMod (приложение электронной почты) на иврит, добавив папку values-he, и скомпилировал весь репозиторий (make).Я удостоверился, что файл с полным языком изготовления включает в себя язык Иврит .

Однако, когда я загрузил zip-файл обновления в телефон и переключил язык на иврит, я все равно получил английскийстроки.Я почти уверен, что пропустил шаг.

Любая идея, пожалуйста?

РЕДАКТИРОВАТЬ: Опять же, мой телефон поддерживает иврит - как видно из других приложений, которые переключают язык в соответствии со значениямисодержимое папки.Это только для приложения электронной почты, что оно не работает.

Ответы [ 3 ]

17 голосов
/ 12 декабря 2011

Согласно ISO 639 , he - это правильный код ISO 639-1 для языка иврит. Принимая во внимание, что iw устарел еще в 1989 году. Причина, по которой некоторые устройства Android используют iw , заключается в том, что благодаря Sun вы можете прочитать подробности .

В таких устройствах, как Nexus S, продаваемых в США, используется iw . Если вы едете в Израиль и проверяете локаль на продаваемом там телефоне (например, Galaxy S), язык, скорее всего, будет указан как «He IL N / A עברית», поэтому он правильно использует he и не устаревший iw .

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

3 голосов
/ 28 июня 2011

Причина, по которой это происходит, заключается в том, что Android использует устаревшие локальные коды Java: иврит - это язык IW, а не HE.Измените это, и это, вероятно, будет работать.Надеюсь, что это полезно для тех, кто находит этот вопрос ...

0 голосов
/ 22 февраля 2011

Возможно, ваш язык телефона не настроен на использование иврита.В этом случае используется папка значений по умолчанию.Возможно, вам удастся удалить strings.xml (и то, что еще имеет общее имя, которое содержится в values-he) из папки нееврейских значений.

...