Wenn der Benutzer auf einer Remote-Benachrichtigung tippt, wird der folgende Rückruf im AppDelegate ausgelöst:Wie erkennen Benutzer klickte iOS Remote-Benachrichtigung?
-application:didReceiveRemoteNotification:fetchCompletionHandler:
in diesem Szenario wird Anwendung gestartet und der App-Status ist UIApplicationStateActive
, die ich als Benutzer interpretiere actioned auf eine Remote-Benachrichtigung.
das Problem: Diese Methode wird auch aufgerufen, wenn eine Remote-Benachrichtigung eintrifft bekommen kann und App im Vordergrund mit inaktivem Zustand.
Beispiel: wenn Ansicht Benachrichtigungszentrum geöffnet ist (Swipe vom oberen Rand des Bildschirms nach unten) oder ein UIAlert ist offen. In beiden Fällen ist der Anwendungsstatus UIApplicationStateActive
und es gibt keine Möglichkeit festzustellen, ob es sich um eine vom Benutzer durchgeführte Benachrichtigung oder einen System-Push handelt.
Q: Wie kann ich feststellen, ob der Rückruf didReceiveRemoteNotification
auf den Benutzer antwortet, der auf die Remote-Benachrichtigung oder die Ankunft der Remote-Benachrichtigung klopft?
TX für die Antwort, es ist ein anderes Problem. Wenn sich App im Vordergrund befindet und das Benachrichtigungscenter geöffnet ist, befindet sich die App im Inaktiven Status. Jetzt, wenn 'didReceiveRemoteNotification' aufgerufen wird, kann es 2 Fälle sein: 1-User-Aktion auf eine Benachrichtigung in Notif Zentrum 2-Ankunft der neuen Push-Benachrichtigung. Problem ist, dass es keine Möglichkeit gibt, dieses 2 Szenario zu unterscheiden. –