Не удалось инициализировать iPhone PayPal - PullRequest
1 голос
/ 17 января 2012

Я пытаюсь запустить PayPal в моем приложении. Иногда я получаю сообщение об ошибке «Network Timeout», и если я повторяю попытку инициализации PayPal, эти предупреждения появляются снова и снова. Как этого избежать? Как правильно переустановить PayPal? Мой код: </p> <pre>- (void)initializePayPal { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; [PayPal initializeWithAppID:PP_APP_ID forEnvironment:ENV_SANDBOX]; while ([PayPal initializationStatus] == STATUS_INPROGRESS) { [NSThread sleepForTimeInterval:1]; } switch ([PayPal initializationStatus] ) { case STATUS_COMPLETED_SUCCESS: NSLog(@"STATUS_COMPLETED_SUCCESS"); break; case STATUS_COMPLETED_ERROR: { NSDictionary *responseMessage = [PayPal getInstance].responseMessage; NSLog(@"STATUS_COMPLETED_ERROR:%@", responseMessage); if ([[responseMessage objectForKey:@"errorId"] integerValue] == 10818) { [self initializePayPal]; } } break; default: break; } [pool release]; }

Ответы [ 2 ]

1 голос
/ 13 мая 2012

Инициирование PayPal иногда не удавалось, когда я использую ENV_SANDBOX Проблема была решена, когда я начинаю использовать ENV_LIVE вместо ENV_SANDBOX

0 голосов
/ 03 мая 2012

На самом деле ваша программа никогда не будет работать.

PayPal.initializePayPal

- это асинхронный метод, и его часть do-initialize должна выполняться в цикле сообщений.Таким образом, в вашем коде вы, пока оператор удерживает основной поток от возврата к циклу событий.что вам нужно сделать, это оставить этот метод и попытаться проверить состояние, когда вы хотите использовать любую функцию PayPal в вашем пользовательском интерфейсе.Дайте реальной инициализации шанс на бег.

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