Локализованная цена в App Store - PullRequest
2 голосов
/ 05 марта 2010

Я помещаю ссылки на другие приложения той же компании в приложение для iPhone, и мы хотим отобразить цену этих приложений. Можно ли как-то получить локализованную ценовую строку (сумму и валюту), подходящую для пользователя? Я предполагаю, что мне придется прибегнуть к чему-то вроде скрипа экрана, но я видел, что люди могут получить довольно много информации из App Store, так что, может быть, есть какой-то относительно простой способ?

Ответы [ 2 ]

6 голосов
/ 05 марта 2010

Вы можете использовать API веб-службы iTunes.

http://www.apple.com/itunesaffiliates/API/AffiliatesSearch2.1.pdf документирует это.

Вы можете использовать поле запроса «страна», чтобы указать, в какой стране вы хотите получить результаты.

Вы можете получить название страны пользователя, используя NSLocale

NSLocale *locale = [NSLocale currentLocale];
NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];
NSString *countryName = [locale displayNameForKey: NSLocaleCountryCode
                         value: countryCode]];

хотя вам может понадобиться таблица поиска для ее форматирования точно так же, как это делает API магазина iTunes.

0 голосов
/ 05 марта 2010

Если вы можете извлечь цену в виде простого числа, NSNumberFormatter предоставит вам локализацию валюты.

NSDecimalNumber *price = [NSDecimalNumber decimalNumberWithString:@"4.95"];

NSNumberFormatter *currencyFormatter = [[NSNumberFormatter alloc] init];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];

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

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