web-dev-qa-db-de.com

Ist eine unbeaufsichtigte Remote-Benachrichtigung möglich, wenn der Benutzer Push für die App deaktiviert hat?

In meiner Einstellungsleiste:

  1. Ich habe einen funktionsspezifischen Schalter, der basierend auf der API-Antwort ein- oder ausgeschaltet werden kann.
  2. Nur von der Website aus kann der Administrator EIN/AUS schalten.
  3. Ich kann/Benutzer-API-Aufrufe jedes Mal ausführen, wenn die Einstellungen auf Einstellungen getippt werden, um die aktuellen Einstellungen für den Benutzer zu überprüfen. Es gibt jedoch einige Nachteile. Wenn der Benutzer bereits eingestellt ist, wird die Benutzeroberfläche nicht aktualisiert. Das Aufrufen von api jedes Mal, wenn die Einstellungen berühren, klingt nicht eine perfekte Lösung.

Ich denke, eine bessere Lösung ist das Senden einer stillen Push-Benachrichtigung, die ich verwenden kann, um den API-Aufruf zum Aktualisieren der Einstellungs-Benutzeroberfläche auszuführen, wann immer dies erforderlich ist. 

Wenn der Benutzer die Push-Benachrichtigung deaktiviert hat, erhalte ich dennoch ein stilles Push? Was ist der empfohlene Ansatz, um mit solchen Situationen umzugehen?

32
Tariq

Kurze Antwort, ja

Die aufregende neue Möglichkeit für App-Entwickler in iOS 8 besteht darin, dass Apple jetzt "stille" Push-Aktionen ausführen kann, auch wenn der Benutzer die Benachrichtigungen deaktiviert hat. „Silent Push“ ist nicht mehr nur für Kiosk-Apps. Jede App kann diese Möglichkeit nutzen, um Inhalte im Hintergrund zu aktualisieren, und sorgt so für ein möglichst aktives und reaktionsfähiges Erlebnis, sobald der Benutzer die App öffnet.

Obwohl...

Benutzer können weiterhin die Fähigkeit Ihrer App deaktivieren, einen "Silent Push" mithilfe des Steuerelements "Background App Refresh" zu verarbeiten. Auch wenn der Apple Push-Benachrichtigungsdienst (APN) einen Push mit dem Status "content-available" (Verfügbar) für Ihr Telefon bereitstellt, wird das Betriebssystem Ihre App nicht aktivieren, um sie zu erhalten, und sie auf dem Boden ablegen. Das Deaktivieren von „Aktualisieren der Hintergrund-App“ ist jedoch eine weniger bekannte Funktion, die nicht direkt mit Benachrichtigungen verknüpft ist. Sie können auf diese Einstellung nicht in den Benachrichtigungseinstellungen zugreifen. Sie befindet sich unter Allgemein> Hintergrund-App-Aktualisierung.

Beachten Sie dies beim Erstellen Ihrer Anwendung.

Quelle: https://www.urbanairship.com/blog/watch-list-ios-8-opt-in-changes

51
gmat1014

  Diese Matrix kann helfen. Auf der linken Seite wird angezeigt, ob die Methode "didReceiveRemoteNotification:" aufgerufen wird oder nicht. Weitere zwei Spalten beziehen sich auf die Einstellung der App. Einstellungen -> IhreApp. Wenn Ihre Anwendung Benachrichtigungen unterstützt und die App im Hintergrund aktualisiert wird. Schauen Sie in die Matrix, um zu überprüfen, wann Ihre App ein stilles Push erhalten wird.

19
GameBegins

Andere Antworten sind gut. Aber es sind keine offiziellen Antworten.

Die offizielle Antwort ist in Neuigkeiten in Benachrichtigungen WWDC 2015 video:

Standardmäßige Benachrichtigungen sind standardmäßig aktiviert. Der Benutzer muss nicht Genehmigen Sie Ihre - nicht Erlauben Sie Ihrer App, sie zu verwenden. Sie können sie einfach verwenden, ohne den Benutzer um Erlaubnis zu bitten. Stille Benachrichtigungen sind jedoch der Mechanismus hinter der Hintergrund-App Aktualisierung. Sie wissen jederzeit, dass der Benutzer die Einstellungen und .__ eingeben kann. Deaktiviere sie. Sie können sich also nicht darauf verlassen, dass sie immer verfügbar sind. Sie Ich weiß nicht, ob der Benutzer sie ausschaltet, und Sie erhalten keine Benachrichtigung mehr. Dies bedeutet auch, dass stille Benachrichtigungen .__ sind. mit bester mühe geliefert. Das bedeutet, wenn die Benachrichtigung auf dem Gerät des Benutzers ankommt, wird das System einige Wahlmöglichkeiten.

Für mehr sehen Sie dieses Bild und diese Antwort

0
Honey