Zum Inhalt springen

iOS SDK: Häufig gestellte Fragen

FAQ zur iOS-Integration

Anchor link to

F: Wie kann ich das Pushwoosh SDK in mein iOS-Projekt installieren?

Anchor link to

Sie können das Pushwoosh SDK entweder mit dem Swift Package Manager oder mit CocoaPods integrieren.

F: Wie installiere ich das Pushwoosh SDK mit dem Swift Package Manager?

Anchor link to

Navigieren Sie in Xcode zum Abschnitt Package Dependencies und fügen Sie das Paket über die folgende URL hinzu: https://github.com/Pushwoosh/Pushwoosh-XCFramework.

F: Wie installiere ich das Pushwoosh SDK mit CocoaPods?

Anchor link to

Öffnen Sie die Podfile-Datei Ihres Projekts und fügen Sie die Zeile pod 'PushwooshXCFramework' hinzu. Führen Sie dann den Befehl pod install im Terminal aus.

F: Welche Capabilities muss ich meinem Projekt hinzufügen, um Push-Benachrichtigungen zu aktivieren?

Anchor link to

Im Abschnitt „Signing & Capabilities“ Ihrer Projekteinstellungen müssen Sie die Capabilities Push Notifications und Background Modes hinzufügen. Wenn Sie Background Modes hinzufügen, stellen Sie sicher, dass Sie das Kontrollkästchen für Remote notifications aktivieren.

F: Welche zusätzliche Capability wird für zeitkritische Benachrichtigungen (Time Sensitive Notifications) benötigt?

Anchor link to

Wenn Sie zeitkritische Benachrichtigungen (iOS 15+) verwenden möchten, müssen Sie auch die Capability Time Sensitive Notifications hinzufügen.

F: Wo muss ich den Initialisierungscode von Pushwoosh hinzufügen?

Anchor link to

Der Initialisierungscode muss zu Ihrer AppDelegate-Klasse hinzugefügt werden.

F: Welchen Initialisierungscode sollte ich in der AppDelegate von SwiftUI hinzufügen?

Anchor link to

Bitte beachten Sie das bereitgestellte Swift-Codebeispiel zur Integration von Pushwoosh in einem SwiftUI-Projekt.

F: Welchen Initialisierungscode sollte ich in einer Standard-Swift-AppDelegate hinzufügen?

Anchor link to

Bitte beachten Sie das bereitgestellte Swift-Codebeispiel zur Integration von Pushwoosh in einem Standard-Swift-Projekt.

F: Welchen Initialisierungscode sollte ich in einer Objective-C-AppDelegate hinzufügen?

Anchor link to

Bitte beachten Sie das bereitgestellte Objective-C-Codebeispiel zur Integration von Pushwoosh in einem Objective-C-Projekt.

F: Welche Schlüssel muss ich meiner Info.plist-Datei hinzufügen?

Anchor link to

Sie müssen den Schlüssel Pushwoosh_APPID, der auf Ihren Application Code gesetzt ist, und den Schlüssel PW_API_TOKEN, der auf Ihr API Token gesetzt ist, in der Info.plist-Datei Ihrer App hinzufügen.

F: Was ist der Zweck der Nachrichten-Zustellungsverfolgung?

Anchor link to

Pushwoosh unterstützt die Verfolgung von Zustellungsereignissen für Push-Benachrichtigungen mithilfe der Notification Service Extension.

F: Wie füge ich eine Notification Service Extension zu meinem Projekt hinzu?

Anchor link to

Gehen Sie in Xcode zu File > New > Target…, wählen Sie Notification Service Extension und drücken Sie Next. Geben Sie einen Zielnamen ein und drücken Sie Finish. Wenn Sie zur Aktivierung aufgefordert werden, drücken Sie Cancel.

F: Wie füge ich das Pushwoosh SDK zur Notification Service Extension hinzu?

Anchor link to

Fügen Sie das bereitgestellte Swift- oder Objective-C-Code-Snippet zur Haupt-.swift- oder .m-Datei Ihrer Notification Service Extension hinzu. Dieser Code verwendet PWNotificationExtensionManager, um die Benachrichtigungsanfrage zu bearbeiten.

F: Was ist der Zweck von App Groups?

Anchor link to

Die App Groups-Capability ist erforderlich, damit die Notification Service Extension mit der Hauptanwendung kommunizieren kann.

F: Wie aktiviere ich App Groups für mein Hauptziel und die Notification Service Extension?

Anchor link to

Gehen Sie für beide Ziele zu Signing & Capabilities, fügen Sie die App Groups-Capability hinzu und erstellen Sie eine neue Gruppe, indem Sie auf die Schaltfläche + klicken. Stellen Sie sicher, dass der Gruppenname mit group. beginnt und verwenden Sie für beide Ziele denselben Gruppennamen.

F: Welche Schlüssel muss ich der Info.plist meines Hauptziels für App Groups hinzufügen?

Anchor link to

Fügen Sie in der Info.plist Ihres Hauptziels den Schlüssel PW_APP_GROUPS_NAME hinzu und setzen Sie dessen Wert auf den Namen Ihrer App Groups-Gruppe.

F: Welche Schlüssel muss ich der Info.plist meiner Notification Service Extension hinzufügen?

Anchor link to

Fügen Sie in der Info.plist Ihrer Notification Service Extension den Schlüssel PW_APP_GROUPS_NAME (gesetzt auf Ihren App Groups-Namen) und den Schlüssel Pushwoosh_APPID (gesetzt auf Ihren Application Code) hinzu.

F: Wie überprüfe ich die Pushwoosh-Integration?

Anchor link to

Nachdem Sie Ihr Projekt erstellt und ausgeführt haben, gehen Sie zum Pushwoosh Control Panel und senden Sie eine Push-Benachrichtigung an Ihre Anwendung. Sie sollten die Benachrichtigung auf Ihrem Gerät sehen.

F: Was sind die beiden Haupt-Callbacks zur Verarbeitung von Push-Benachrichtigungen im Pushwoosh SDK?

Anchor link to

Die beiden Haupt-Callbacks sind onMessageReceived und onMessageOpened.

F: Wann wird der onMessageReceived-Callback aufgerufen?

Anchor link to

Die onMessageReceived-Methode wird aufgerufen, wenn eine Push-Benachrichtigung von der Anwendung empfangen wird.

F: Wann wird der onMessageOpened-Callback aufgerufen?

Anchor link to

Die onMessageOpened-Methode wird aufgerufen, wenn der Benutzer mit einer Push-Benachrichtigung interagiert und diese öffnet.

F: Wie kann ich auf die Payload einer empfangenen oder geöffneten Push-Benachrichtigung zugreifen?

Anchor link to

Auf die Payload eines PWMessage-Objekts (das an die onMessageReceived- und onMessageOpened-Callbacks übergeben wird) kann über dessen payload-Eigenschaft zugegriffen werden.

F: Wie kann ich eine Benutzer-ID in Pushwoosh festlegen?

Anchor link to

Verwenden Sie die setUserId(_:)-Methode des Pushwoosh.sharedInstance()-Objekts und übergeben Sie die ID des Benutzers als Argument.

F: Wie kann ich die E-Mail-Adresse eines Benutzers in Pushwoosh festlegen?

Anchor link to

Verwenden Sie die setEmail(_:)-Methode des Pushwoosh.sharedInstance()-Objekts und geben Sie die E-Mail des Benutzers an.

Wie kann ich zusätzliche Benutzerinformationen als Tags in Pushwoosh festlegen?

Anchor link to

Verwenden Sie die setTags(_:)-Methode des Pushwoosh.sharedInstance()-Objekts und übergeben Sie ein Dictionary, bei dem die Schlüssel die Tag-Namen und die Werte die entsprechenden Tag-Werte sind.

Wie kann ich ein Benutzerereignis mit zusätzlichen Attributen verfolgen?**

Anchor link to

Verwenden Sie die postEvent(_:withAttributes:)-Methode von PWInAppManager.shared() und geben Sie den Ereignisnamen (z. B. "login") und ein Dictionary mit Attributen (z. B. "name", "last_login") an.

F: Wie kann ich ein Kaufereignis eines Benutzers mit Produktdetails verfolgen?

Anchor link to

Verwenden Sie die postEvent(_:withAttributes:)-Methode von PWInAppManager.shared() mit dem Ereignisnamen "purchase" und einem Dictionary, das Produktdetails wie "product_id", "product_name", "price" und "quantity" enthält.

F: Wie richte ich einen Delegate zur Handhabung der Rich-Media-Präsentation ein?

Anchor link to

Konformieren Sie in Ihrem View Controller oder einer anderen geeigneten Klasse mit dem PWRichMediaPresentingDelegate-Protokoll und setzen Sie die delegate-Eigenschaft von PWRichMediaManager.shared() auf Ihre konforme Instanz.

F: Wie kann ich den Präsentationsstil von Rich Media konfigurieren?

Anchor link to

Verwenden Sie das PWModalWindowConfiguration.shared()-Objekt, um Eigenschaften wie die Position des modalen Fensters und die Präsentations-/Ausblendungsanimationen mit der configureModalWindow(with:present:dismiss:)-Methode zu konfigurieren.

F: Auf welche Informationen kann ich in den Rich-Media-Delegate-Methoden zugreifen?**

Anchor link to

Die Delegate-Methoden bieten Zugriff auf das PWRichMedia-Objekt, das Informationen über den Rich-Media-Inhalt enthält, einschließlich seiner pushPayload. Die presentingDidFailForRichMedia:withError:-Methode stellt auch ein Error-Objekt bereit, das den Fehler beschreibt.

Fehlerbehebung

Anchor link to

F: Fehler „Your provisioning profile does not have APS entry“

Anchor link to

Wenn Sie die Fehlermeldung „Your provisioning profile does not have APS entry.“ sehen, stellen Sie sicher, dass Ihr Provisioning Profile Push-kompatibel ist und die Zeichenfolge aps-environment mit dem Wert production oder development enthält. Am einfachsten können Sie dies überprüfen, indem Sie das mobile Provisioning Profile in einem beliebigen Texteditor öffnen und nach der Zeichenfolge aps-environment suchen. Sie sollte dort vorhanden sein.

Wenn dies der Fall ist und Sie den Fehler weiterhin erhalten, bedeutet dies, dass XCode immer noch ein „nicht Push-kompatibles“ Profil auswählt. Bitte stellen Sie sicher, dass Sie mit dem richtigen signieren – manchmal, wenn Sie zwei Profile für dieselbe App ID haben, bringt XCode die Dinge durcheinander und signiert mit dem alten.

Die empfohlenen Schritte sind:

  1. Entfernen Sie alle XCode-Profile;
  2. Fügen Sie das eine und einzige neue Profil hinzu;
  3. Erstellen Sie die App neu.

F: Wie sehen ein iOS Push-Token und eine HWID aus?

Anchor link to

iOS-Geräte-Push-Token sind Zeichenfolgen mit 64 hexadezimalen Symbolen. Beispiel für ein Push-Token:
03df25c845d460bcdad7802d2vf6fc1dfde97283bf75cc993eb6dca835ea2e2f
Stellen Sie sicher, dass die iOS-Push-Token, die Sie bei der gezielten Ansprache bestimmter Geräte in Ihren API-Anfragen verwenden, in Kleinschreibung sind.

Pushwoosh verwendet IDFV als Geräte-HWID. Beachten Sie, dass sich diese ändern kann, falls ein Benutzer alle Apps eines bestimmten Anbieters neu installiert.

CBAF8ED1-17FB-49A3-73BD-DC79B63AEF93

F: Wie schalte ich das Banner ein und aus, während meine App läuft?

Anchor link to

Standardmäßig zeigt unser neuestes iOS SDK das Benachrichtigungsbanner an, wenn die App im Vordergrund läuft.
Sie können dieses Verhalten steuern, indem Sie die folgenden Flags in der Info.plist ändern:

Flag Pushwoosh_ALERT_TYPE – Typ String, Werte sind:

  • BANNER – Standardwert, zeigt Banner-In-App-Benachrichtigung an
  • ALERT – Alert-Benachrichtigung
  • NONE – keine Benachrichtigungen anzeigen, wenn die App im Vordergrund ist

F: Wie erhalte ich mein iOS-Geräte-Push-Token zur Verwendung in Testgeräten?

Anchor link to

Um Ihr iOS-Geräte-Push-Token zu erhalten,

  1. Öffnen Sie Xcode => Devices & Simulators;
  2. Verbinden Sie das Testgerät mit Ihrem Computer;
  3. Wählen Sie Ihr verbundenes Gerät in der Liste der Geräte auf der linken Seite aus;
  4. Klicken Sie auf die Schaltfläche „Open Console“.

Starten Sie die Anwendung, für die Sie das Geräte-Push-Token benötigen, und finden Sie Ihr 64-stelliges hexadezimales Geräte-Push-Token in der Zeile „Registered for push notifications“:

F: Warum werden Badges nicht gelöscht, nachdem ich meine App deinstalliert und kurz darauf neu installiert habe?

Anchor link to

Dies ist ein erwartetes Verhalten – Badges werden von iOS selbst gehandhabt und ihre Werte werden in den Anwendungseinstellungen gespeichert, die nicht sofort entfernt werden, wenn Sie Ihre App deinstallieren. Ein Badge-Wert bleibt bei einer sofortigen Neuinstallation für einige Zeit erhalten, was dazu führt, dass nach der Neuinstallation der App dieselben Badges angezeigt werden.