Ich versuche Push-Benachrichtigungen mit this Tutorial zu implementieren. Chat mit PubNub funktioniert perfekt. Ich kann auch Push-Benachrichtigungen mit this Skript senden und empfangen, aber nur mit dem Entwicklungszertifikat, also habe ich dies an PubNub übermittelt. (Weiß jemand, warum ich beiden Zertifikate für meine App erstellt habe?) Wenn ich die App öffnen, ich habe die Nachricht mit allen Keys erhalten, wie ich es in der DebugConsole sehen:Ich kann PubNub Push-Benachrichtigungen nicht senden/empfangen an iOS
{ "message": "Asdas",
"pn_apns": {
"aps": {
"alert": "To Apple and PN Native devices!"
}
},
"senderId": "mySenderId",
"receiverId": "myReceiverId"
}
zeige ich werde die ganze Schritte, die für Push-Benachrichtigungen relevant sind, also bitte sagen, wenn ich etwas vergessen habe oder etwas falsch gemacht habe.
didFinishLaunching
UIUserNotificationType types = (UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert);
UIUserNotificationSettings *mySettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:mySettings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
PNConfiguration *configuration = [PNConfiguration configurationWithPublishKey:@"pub-key" subscribeKey:@"sub-key"];
self.client = [PubNub clientWithConfiguration:configuration];
[self.client addListener:self];
[self.client subscribeToChannels:@"myChannelId" withPresence:NO];
didRegisterForRemoteNotificationsWithDeviceToken
[self.client addPushNotificationsOnChannels:@[@"apns"] withDevicePushToken:deviceToken andCompletion:^(PNAcknowledgmentStatus *status) { }];
eine PubNub-Chat Nachricht senden
NSDictionary * dict = @{@"aps": @{@"alert":@"To Apple and PN Native devices!"}};
[self.client publish:@{@"message" : @"Hello!", @"senderId" : @"abc123", @"receiverId" : @"abc124"} toChannel:@"myChannel" mobilePushPayload:dict withCompletion:^(PNPublishStatus *status) {}];
Ok, danke. Ich habe jetzt das dev-cert auf PubNub hochgeladen und benutze auch die Dev-App (gestartet mit Xcode), aber es funktioniert nicht ... – Steeve
Wie stellst du das Push-Token auf dem Server ein? Der Push-Token unterscheidet zwischen prod und dev und kann sich trotzdem ändern. Wenn Sie eine falsche oder alte haben, dann funktioniert Push nicht. – Gruntcakes
Ich setze den Push-Token auf dem Server in didRegisterForRemote .... Mit dem Aufruf self.client addPushNotifications ... – Steeve