APNS: недействительный токен (8)

Я использую сервер apns php, указанный на странице https://code.google.com/p/apns-php/ .

Я установил сертификат push push, но мой код по-прежнему вызывает ошибку при подключении.

Что не так с этим? Вот как я получаю токен устройства:

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken { #if !TARGET_IPHONE_SIMULATOR // Prepare the Device Token for Registration (remove spaces and < >) NSString *deviceToken = [[[[devToken description] stringByReplacingOccurrencesOfString:@"<"withString:@""] stringByReplacingOccurrencesOfString:@">" withString:@""] stringByReplacingOccurrencesOfString: @" " withString: @""]; NSLog(@"%@", deviceToken); #endif } 

Это ошибка при запуске моего сервера:

 Sat, 11 May 2013 13:37:53 -0700 ApnsPHP[18198]: INFO: Trying ssl://gateway.push.apple.com:2195... Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Connected to ssl://gateway.push.apple.com:2195. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Sending messages queue, run #1: 1 message(s) left in queue. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: STATUS: Sending message ID 1 [custom identifier: abc123] (1/3): 101 bytes. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: ERROR: Unable to send message ID 1: Invalid token (8). Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Disconnected. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Trying ssl://gateway.push.apple.com:2195... Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Connected to ssl://gateway.push.apple.com:2195. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: INFO: Sending messages queue, run #2: 1 message(s) left in queue. Sat, 11 May 2013 13:37:54 -0700 ApnsPHP[18198]: WARNING: Message ID 1 [custom identifier: abc123] has an unrecoverable error (8), removing from queue without retrying... Sat, 11 May 2013 13:37:55 -0700 ApnsPHP[18198]: INFO: Disconnected. 

Наиболее вероятным объяснением является то, что вы отправляете push-уведомление с маркером изолированного файла на сервер APNS.

Либо вы используете старый токен устройства, который был отправлен на ваш сервер вашим приложением, когда вы его тестировали в среде песочницы, либо ваше приложение по-прежнему подписывается с профилем подготовки к развертыванию и по-прежнему получает токены в виде песочницы из службы APNS ,

Мой ответ предполагает, что вы используете маркер устройства, который был создан из службы APN, а не какой-то фиктивный маркер, который вы создали сами.

Я предлагаю вам проверить профиль подготовки, чтобы узнать, какое значение отображается для права доступа. Я также предлагаю вам очистить свой db от любых старых токенов устройства.