интернационализация iphone - PullRequest
0 голосов
/ 21 июля 2010

Мне нужно показать несколько текстов, извлеченных из Интернета, в моем приложении. Мне нужно обеспечить интернационализацию, но я не хочу хранить все ресурсы локально. Возможно ли, что когда я нажимаю на сервер из Китая, я получаю ответ на китайском? из Японии я получаю ответ из Японии? что было бы идеальным решением?

1 Ответ

0 голосов
/ 21 июля 2010

Возможно (плохо) преобразовать IP-адрес в страну;поиск "geoip". libgeoip Debian, вероятно, использует Страна GeoLite .Такие базы данных иногда устаревшие или просто неправильные.

Я думаю, что это неправильное поведение.Я хочу, чтобы приложения использовали язык, на котором настроен мой телефон, а не «язык страны» - возможно, я турист в Китае и не понимаю китайский, или, может быть, я в Швейцарии (если это будетна немецком, французском или латинском?).

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

NSArray * localizations = [[NSBundle mainBundle] preferredLocalizations];

Затем передайте список на сервер (или просто передайте objectAtIndex: 0 на сервер).

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

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