Wissen, ob die App die Benachrichtigung von der Serverseite erhalten hat

8

Ich baue eine zeitungsähnliche App und würde gerne wissen, wie viele Leute die Push-Benachrichtigung des Artikels erhalten haben vs wie viele tatsächlich gelesen haben .

Ich dachte daran, eine Methode zu implementieren, bei der die App beim Eintreffen der Benachrichtigung aufwacht und eine Anfrage an den Server sendet: " Hallo, ich bin

Matteo Cardellini 18.10.2016, 22:24
quelle

7 Antworten

2

Antwort des technischen Supports von Apple Developer:

  

Hallo Matteo,

     

Vielen Dank, dass Sie sich an den technischen Support von Apple Developer (DTS) gewandt haben. Unsere Ingenieure haben Ihre Anfrage geprüft und sind zu dem Schluss gekommen, dass es keine unterstützte Möglichkeit gibt, die gewünschte Funktionalität zu erreichen, da die Konfiguration des Versandsystems derzeit noch nicht abgeschlossen ist.

Also am Ende der Spiele ist es nicht möglich

    
Matteo Cardellini 24.10.2016, 22:33
quelle
4

Das ist eine sehr nette Frage, wie man solche stillen Benachrichtigungen implementiert. Hier gibt es wenige Variablen, die wir betrachten und anders behandeln müssen.

Push-Benachrichtigungen, die an die Benutzer gesendet werden - Einige von ihnen hätten es erhalten, manche hätten es vielleicht gar nicht erhalten.

Mehrere Benachrichtigungen in ein paar Minuten an denselben Benutzer senden - Es wird schwierig, die genaue Benachrichtigung zu verfolgen, die der Nutzer beim Öffnen der App erhalten hat. Weil der Benutzer möglicherweise alle Nachrichten, die Benachrichtigungen erhalten haben, in einem einzigen Versuch gelesen hat.

Der tatsächliche Inhalt, der dem Nutzer in der App angezeigt wird. - Der Nutzer hat die App möglicherweise aufgrund von Benachrichtigungen geöffnet. Manchmal hat er die Benachrichtigungen gesehen und dann die App direkt geöffnet, ohne mit den Benachrichtigungen zu interagieren.

So kann die Implementierung aussehen.

  1. Implementiere Push-Benachrichtigungen für die App
  2. Der Benutzer erhält die Push-Benachrichtigungen und das Benachrichtigungs-Badge zeigt Nummer (1).
  3. Jetzt, wenn der Nutzer dieselbe Nachricht in einem anderen Medium (Eigene Mac App oder PC-App) anzeigt. Der Server wird über die Aktionen des Benutzers und die Nachrichten benachrichtigt, die er / sie / gerade gelesen hat.
  4. Nun weiß der Server, dass er eine Benachrichtigung gesendet hat und diese nicht gelesen wird. Wenn Sie die Lesebenachrichtigung erhalten, können Sie eine Remote-Benachrichtigung senden, die von der App im Hintergrund bearbeitet werden kann, und das Badge aktualisieren.

Sehen Sie sich diesen Link an Weitere Informationen zum Umgang mit Benachrichtigungen in verschiedenen Modi.

Die Apple-Dokumentation kann auch hier als Hintergrund verwendet werden Modus - Remote-Benachrichtigung.

So werden Sie Ihre App im Hintergrund mit bestimmten Einstellungen ausführen, um auf stille Benachrichtigungen zu reagieren und das Badge wie WhatsApp zu aktualisieren. Ich hoffe, das hilft.

    
Prav 21.10.2016 16:04
quelle
2

Probieren Sie diesen Benachrichtigungslistener-Dienst Ссылка aus.

    
Hardik Mehta 21.10.2016 05:53
quelle
2

Ich habe schon so etwas in einer meiner App implementiert, und es ist wirklich schwierig. Sie müssen eine Menge Anwendungsfälle behandeln.

  • Erste Sache (aber Sie scheinen es bereits zu kennen): Apple stellt nicht zur Verfügung jeder Rückruf um zu sagen: "Diese Benachrichtigung wurde gesendet"

  • Zweitens: Wenn Ihre App getötet wird (nicht einmal im Hintergrund), kann mit Ihrer Benachrichtigung überhaupt nicht ausgeführt werden , was bedeutet, dass Ihre App nicht aufwachen und nicht mehr aktiviert werden kann Lesen Sie die Benachrichtigung und tun Sie etwas. Das einzige, was Sie tun können, ist die Ausweisnummer zu ändern, selbst wenn Ihre App getötet wird.

  • Drittens: Wenn sich Ihre App im Hintergrund befindet, können Sie Ihre App 30 Sekunden lang aufwecken. Während dieser Zeit können Sie eine Anfrage an den Server senden, aber wenn es zu lange dauert, wird der Prozess vom Betriebssystem beendet.

Hier ist eine kurze Erklärung, wie Sie das System implementieren könnten:

  1. Sie müssen auf der Serverseite alle Benachrichtigungen, die gesendet wurden, in Ihrer Datenbank speichern. Sobald sie gesendet wurden, speichern Sie sie als "pending"
  2. Auf der App-Seite: Wenn Ihre App im Hintergrund läuft können Sie Ihre App aktivieren, um eine Anfrage an den Server zu senden, sobald die Benachrichtigung eingegangen ist. In Ihrer Datenbank ändert sich dann Ihr Benachrichtigungsstatus in "Empfangen" oder "Benachrichtigen". Wenn Ihre App gelöscht wurde , wenn der Nutzer Ihre App startet, senden Sie eine Anfrage an den Server, um alle Benachrichtigungen im Status "ausstehend" anzufordern, damit Ihre App auf dem neuesten Stand ist Ihre Ausweisnummer.
  3. Wenn der Benutzer auf die Benachrichtigung klickt, wird Ihre App direkt auf dem Artikel geöffnet. Auf diese Weise können Sie eine Anfrage senden und Ihrem Server sagen, dass der Artikel empfangen und gelesen wurde.
  4. Wenn der Benutzer Ihren Artikel auf der Webseite gelesen hat, senden Sie eine Benachrichtigung. Legen Sie die Nummer des Benachrichtigungszeichens mit der Anzahl der tatsächlichen "ausstehenden" Benachrichtigungen in Ihrer Datenbank fest.

Hoffe, das wird dir zusätzlich zur Antwort von @Prav helfen:)

    
RomOne 24.10.2016 06:22
quelle
1

Sie möchten Ihre App mit der Web-App oder der Website synchronisieren, nachdem Sie eine Benachrichtigung an die Anwendung gesendet haben, anstatt eine Benachrichtigung an eine bestimmte ID zu senden. Wenn Benutzer diese Nachricht aus Ihrem Web liest, senden Sie die Push-Benachrichtigung erneut mit einer anderen Nachricht und behandeln sie im Service oder Broadcast Empfänger danach Benachrichtigung abbrechen, wenn die empfangene Nachricht eine andere Nachricht enthält.Sie ​​können auch den Benachrichtigungs-Listener verwenden.Suchen Sie diesen Link

Lesen Sie diesen Link für ios.

    
MIkka Marmik 21.10.2016 07:18
quelle
0

Ich weiß nicht, über die Apple-Benachrichtigung, weiß nicht, wie viele Benutzer Ihre Benachrichtigung erhalten haben. Aber wisse einen Weg zu finden, wie von ihnen das gelesen wird. Link für 1X1 Pixel-Bildlink senden. wenn die Benachrichtigung geöffnet wird. Laden Sie diese Bildverknüpfung (versteckt, es werden keine nennenswerten Daten benötigt, da es nur 1X1 Pixel ist) wie

%Vor%

serverseitig save articleId mit userId und return imgData (1X1) es wird funktionieren

    
Gopi S 26.10.2016 14:56
quelle
0

Hallo @ Smile Anwendungen nach dem Lesen Ihrer Frage Ich würde vorschlagen, dass Sie OneSignal Website sehen. Mit OneSignal können Sie Benachrichtigungen an Ihre abonnierten Benutzer senden. Außerdem wird angezeigt, wie viele Nutzer Ihre App verwenden und wie viele Nutzer Ihre Benachrichtigungen erhalten haben. Wenn Sie Benachrichtigungen senden und diese über die App selbst verfolgen möchten, können Sie ihre API verwenden. Es ist einfach und ich habe dies in Android implementiert und werde bald in IOS implementieren.

Nun können Sie im zweiten Teil Ihrer Frage, wie Sie feststellen können, wie viele Nutzer Ihre Benachrichtigung gelesen bzw. geöffnet haben und auf welche Aktivität sie sich beziehen, verwenden Google Analytics Damit können Sie sehen, aus welchem ​​Teil der Welt Ihre Nutzer Ihre App verwenden und welche Aktivitäten Ihrer App am häufigsten geöffnet werden. Es ist auch einfach und ich habe dies auch in Android implementiert und werde bald auch in IOS implementieren.

    
knownUnknown 28.10.2016 04:30
quelle