InApp Покупка в медленной сети - PullRequest
1 голос
/ 24 мая 2010

Обновлено: я получил предупреждение "Не удается подключиться к iTune Store" через 6 минут. Можно ли установить любое значение тайм-аута при покупке inApp.

Мой код покупки InApp прекрасно работает в обычной сети, но в очень медленной сети (браузеру Safari потребуется 5 минут для загрузки веб-страницы). Я не получаю никаких делегатов ...

- (void)requestDidFinish:(SKRequest *)request 
- (void)request:(SKRequest *)request didFailWithError:(NSError *)error
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response

Так что мой код блокируется неопределенно, потому что я изначально устанавливаю setUserInteractionEnabled в FALSE и возвращаю его в TRUE в указанных выше делегатах ...

[[[UIApplication sharedApplication]keyWindow]setUserInteractionEnabled:FALSE];

Можно ли проверить состояние сети перед созданием "SKProductsRequest" или каким-либо другим лучшим способом реализовать inApp Purchase? Могу ли я использовать какой-либо механизм тайм-аута?

Заранее спасибо,

1 Ответ

1 голос
/ 24 мая 2010

Вы можете использовать предоставленный Apple пример кода Reachability, чтобы проверить, включена ли сеть.Что касается блокировки кода, вы считаете, что ваш дизайн не идеален?Установите этот процесс, чтобы НЕ блокировать пользователя и позволить ему работать в фоновом режиме.

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