Implementiere PushKit und teste das Entwicklungsverhalten

Ich möchte den PushKit-Dienst in meiner App (Voip-App) implementieren, habe jedoch folgende Zweifel: Ich sehe, dass ich nur ein Produktions-Voip-Zertifikat generieren kann. Funktioniert dies, wenn ich versuche, den Voip-Push-Benachrichtigungsdienst auf dem Entwicklungsgerät zu testen?

Dies ist mein Implementierungstest:

Mit dieser 3 Codezeile kann ich beim didUpdatePushCredentials-Rückruf ein Push-Token erhalten, das ich zum Speichern auf meinem Server verwende.

PKPushRegistry *pushRegistry = [[PKPushRegistry alloc] initWithQueue:dispatch_get_main_queue()];
pushRegistry.delegate = self;
pushRegistry.desiredPushTypes = [NSSet setWithObject:PKPushTypeVoIP];

Serverseitig generiere ich eine "normale" Payload-Push-Benachrichtigung mit nur Warnungstext und sende sie an das auf meinem Server gespeicherte Voip-Token.

Ich benutze den Rückruf mit Debug-Protokoll, aber sie werden nie aufgerufen!

- (void)pushRegistry:(PKPushRegistry *)registry didInvalidatePushTokenForType:(NSString *)type {

          NSLog(@"didInvalidatePushTokenForType");

}

-(void)pushRegistry:(PKPushRegistry *)registry didReceiveIncomingPushWithPayload:(PKPushPayload *)payload forType:(NSString *)type {

          NSLog(@"didReceiveIncomingPushWithPayload: %@", payload.description);

}

-(void)pushRegistry:(PKPushRegistry *)registry didUpdatePushCredentials:(PKPushCredentials *)credentials forType:(NSString *)type {
     if([credentials.token length] == 0) {
           NSLog(@"voip token NULL");

          return;
     }

      NSLog(@"didUpdatePushCredentials: %@ - Type: %@", credentials.token, type);

}

Wenn ich versuche, eine Push-Benachrichtigung von meinem Server an das zuvor hochgeladene Voip-Geräte-Token zu generieren, werde ich bei einem didReceiveIncomingPushWithPayload-Rückruf nie benachrichtigt, aber vom Server erhalte ich eine 200-OK-Nachricht (Nachricht wurde erfolgreich gesendet)

Antworten auf die Frage(6)

Ihre Antwort auf die Frage