/ / Woher weiß die iOS-App, dass sie sich für APNS registrieren muss oder nicht? - iOS, Apple-Push-Benachrichtigungen

Wie wird die iOS App wissen, dass sie sich für APNS registrieren muss oder nicht? - iOS, Apple-Push-Benachrichtigungen

Ich weiß, dass das didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken wird aufgerufen, wenn Ihre App sich erfolgreich für Push-Benachrichtigungen registriert und Sie Ihr Gerätetoken erhalten.

Wie in der Apple-Dokumentation Das Gerätetoken wird Ihnen von Ihrer Client-App bereitgestellt, die das Token erhält nach der Registrierung mit dem Remote-Benachrichtigungsdienst.

Ich möchte wissen, wie eine App wissen wird, wenn MUSS sich registrieren selbst für Remote-Benachrichtigungsdienste oder nicht beim Start.

Antworten:

1 für die Antwort № 1

Um die Push-Benachrichtigung zu implementieren, müssen Sie in der Anwendung didFinishLaunchingWithOptions Folgendes schreiben

    UIUserNotificationType type=(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge);
UIUserNotificationSettings *settings=[UIUserNotificationSettings settingsForTypes:type categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
[[UIApplication sharedApplication]registerForRemoteNotifications];

Abgesehen davon müssen Sie Apns erstellenEntwicklungszertifikat und entsprechende Bereitstellungsprofile, bei denen der Push-Benachrichtigungsdienst aktiviert ist. Wenn Sie Ihre App auf einem Gerät mit diesen Bereitstellungsprofilen erstellen, erkennt das Gerät, dass für diese App der Push-Benachrichtigungsdienst aktiviert ist, und das Gerät gibt eine Warnmeldung aus. Wenn der Benutzer ok drückt, wird nur didRegisterForRemoteNotificationsWithDeviceToken ausgelöst, und der Entwickler kann deviceToken erhalten.


0 für die Antwort № 2

Ich habe selbst nachgeschlagen - die "Anfangspunkt" setzt das PushNotifications aktiviert in Ihrem Bereitstellungsprofil im Entwicklerportal, das die Anzeige abschaltet Registrieren Ihre App für Remote-Benachrichtigungen.