iOS 10 Notification Service Extension nicht aufrufen

8

Ich habe versucht, die neue Notification Service Extension zu implementieren, aber ich habe ein Problem.

In meiner NotificationService.swift-Datei habe ich diesen Code:

%Vor%

Wenn ich eine Push-Benachrichtigung erhielt, wurde die Methode didReceive (_ request: UNNotificationRequest, withContentHandler contentHandler: @ escaping (UNNotificationContent) - & gt; Void) nie aufgerufen.

Vielleicht habe ich missverstanden, wie diese Erweiterung funktioniert?

    
just 23.09.2016, 14:29
quelle

4 Antworten

10
  1. Stattdessen wird die App ausgeführt. Sie müssen die Dienstverlängerung als Ziel ausführen. Dann wird gefragt, für welche App du die Dienstverlängerung ausgeführt hast, dann wähle deine App und es wird eine Benachrichtigung gesendet.

  2. Stellen Sie sicher, dass das Implementierungsziel kleiner ist als das Gerätebetriebssystem in der Serviceerweiterung.

  3. Bitte stellen Sie sicher, dass die Nutzdaten "veränderbaren Inhalt" enthalten: 1.

    %Vor%
  4. Fügen Sie kein "Content-available" -Flag in aps hinzu, wenn nötig, make make 0. "Content-available": 0,

Sudhanshu Gupta 13.02.2017 10:34
quelle
8

Überprüfen Sie Ihr Implementierungsziel in der Serviceerweiterung.

Ich hatte beim Testen auf dem Gerät mit 10.1 das Implementierungsziel auf 10,2 eingestellt und die Erweiterung wurde erst aufgerufen, als ich sie änderte.

Ein anderes Problem könnte das Debuggen sein. Damit es funktioniert, müssen Sie den Dienst Erweiterungsprozess anhängen. Im Xcode Menü Debug & gt; Anhängen an Prozess & gt; Name der Erweiterung

    
Kamilton 07.04.2017 13:08
quelle
3

Ihre Push-Benachrichtigungs-Payload sollte den "mutable-content" enthalten: 1 Schlüsselwertpaar .

>
  

Das aps-Wörterbuch der Fernbenachrichtigung enthält den Schlüssel mutable-content mit dem Wert 1.

Ex der Push-Benachrichtigungs-Payload JSON:

%Vor%

Das funktioniert einwandfrei und ich bekomme die Push-Benachrichtigung wie folgt:

Beachten Sie auch Folgendes:

  

Sie können keine stillen Benachrichtigungen oder solche, die nur einen Ton abspielen oder das Symbol der App abstempeln, ändern.

Sie können Pusher oder Houston zum Testen der Push-Benachrichtigungen.

    
Raja Vikram 29.09.2016 10:12
quelle
0
___ qstnhdr ___ iOS 10 Notification Service Extension nicht aufrufen ___ answer43279018 ___

Überprüfen Sie Ihr Implementierungsziel in der Serviceerweiterung.

Ich hatte beim Testen auf dem Gerät mit 10.1 das Implementierungsziel auf 10,2 eingestellt und die Erweiterung wurde erst aufgerufen, als ich sie änderte.

Ein anderes Problem könnte das Debuggen sein. Damit es funktioniert, müssen Sie den Dienst Erweiterungsprozess anhängen. Im Xcode Menü Debug & gt; Anhängen an Prozess & gt; Name der Erweiterung

    
___ tag123ios ___ iOS ist das mobile Betriebssystem, das auf dem Apple iPhone, iPod touch und iPad ausgeführt wird. Verwenden Sie dieses Tag [ios] für Fragen zur Programmierung auf der iOS-Plattform. Verwenden Sie die verwandten Tags [objective-c] und [swift] für Probleme, die für diese Programmiersprachen spezifisch sind. ___ tag123swift ___ Swift ist eine universelle Open-Source-Programmiersprache, die von Apple Inc. für ihre Plattformen und Linux entwickelt wurde. Verwenden Sie das Tag nur für Fragen zu Sprachfunktionen oder für Code in Swift. Verwenden Sie die Tags [ios], [osx], [watch-os], [tvos], [cocoa-touch] und [cocoa] für (sprachunabhängige) Fragen zu den Plattformen oder Frameworks. ___ answer42201942 ___
  1. Stattdessen wird die App ausgeführt. Sie müssen die Dienstverlängerung als Ziel ausführen. Dann wird gefragt, für welche App du die Dienstverlängerung ausgeführt hast, dann wähle deine App und es wird eine Benachrichtigung gesendet.

  2. Stellen Sie sicher, dass das Implementierungsziel kleiner ist als das Gerätebetriebssystem in der Serviceerweiterung.

  3. Bitte stellen Sie sicher, dass die Nutzdaten "veränderbaren Inhalt" enthalten: 1.

    %Vor%
  4. Fügen Sie kein "Content-available" -Flag in aps hinzu, wenn nötig, make make 0. "Content-available": 0,

___ antwort43365709 ___

Ich wurde verrückt. Endlich wurde mir klar, dass ich das deployment target von Notification Service Extension % 10.3 hatte (mein Handy auch). Ich habe mich in 10.2 geändert und es funktioniert perfekt

    
___ tag123ios10 ___ iOS 10 ist die zehnte Version von Apples iOS-Mobilbetriebssystem. Es wurde am 13. Juni 2016 auf der Apple Worldwide Developers Conference (WWDC) des Unternehmens angekündigt. Das ios10-Tag sollte für Fragen verwendet werden, die für das Betriebssystem Apple iOS 10 spezifisch sind. Allgemeine iOS-Fragen sollten das ios-Tag verwenden. ___ tag123iosextensions ___ App-Erweiterungen für iOS-Entwicklung. ___ qstntxt ___

Ich habe versucht, die neue Notification Service Extension zu implementieren, aber ich habe ein Problem.

In meiner NotificationService.swift-Datei habe ich diesen Code:

%Vor%

Wenn ich eine Push-Benachrichtigung erhielt, wurde die Methode didReceive (_ request: UNNotificationRequest, withContentHandler contentHandler: @ escaping (UNNotificationContent) - & gt; Void) nie aufgerufen.

Vielleicht habe ich missverstanden, wie diese Erweiterung funktioniert?

    
___ answer39767452 ___

Ihre Push-Benachrichtigungs-Payload sollte den "mutable-content" enthalten: 1 Schlüsselwertpaar .

>
  

Das aps-Wörterbuch der Fernbenachrichtigung enthält den Schlüssel mutable-content mit dem Wert 1.

Ex der Push-Benachrichtigungs-Payload JSON:

%Vor%

Das funktioniert einwandfrei und ich bekomme die Push-Benachrichtigung wie folgt:

Beachten Sie auch Folgendes:

  

Sie können keine stillen Benachrichtigungen oder solche, die nur einen Ton abspielen oder das Symbol der App abstempeln, ändern.

Sie können Pusher oder Houston zum Testen der Push-Benachrichtigungen.

    
___
croigsalvador 12.04.2017 09:33
quelle

Tags und Links