Skip to content

Leitfaden für Deeplinking unter iOS

Dieser Leitfaden unterstützt Sie bei der Auswahl der geeigneten Deeplinking-Strategie für Ihre iOS-App – abhängig davon, welchen Messaging-Kanal Sie verwenden und ob Sie einen Drittanbieter für Links wie Branch nutzen.

Für Details zur Implementierung siehe Deeplinking. Informationen zur Fehlerbehebung finden Sie unter Fehlerbehebung bei Deeplinking.

Es gibt drei Möglichkeiten, Links aus Braze-Nachrichten in Ihrer iOS-App zu verarbeiten. Jede funktioniert anders und eignet sich für unterschiedliche Kanäle und Anwendungsfälle.

Link-Typ Beispiel Am besten geeignet für Öffnet ohne installierte App?
Angepasstes Schema myapp://products/123 Push-Benachrichtigungen, In-App-Nachrichten, Content Cards Nein – Link funktioniert nicht
Universeller Link https://myapp.com/products/123 E-Mail, SMS, Kanäle mit Klick-Tracking Ja – Fallback auf das Internet
Web-URL in der App öffnen Jede https://-URL Anzeige von Webinhalten in einem modalen WebView Nicht zutreffend – wird im WebView angezeigt

Deeplinks mit angepasstem Schema (zum Beispiel myapp://products/123) öffnen Ihre App direkt auf einem bestimmten Bildschirm. Sie stellen die einfachste Option für Kanäle dar, bei denen Links nicht von Dritten verändert werden.

Verwenden Sie Deeplinks mit angepasstem Schema, wenn:

  • Sie Push-Benachrichtigungen, In-App-Nachrichten oder Content Cards versenden
  • Der Link nicht funktionieren muss, falls die App nicht installiert ist
  • Sie kein Klick-Tracking benötigen (E-Mail-ESP-Link-Wrapping)

Verwenden Sie keine Deeplinks mit angepasstem Schema, wenn:

  • Sie E-Mails versenden – ESPs verpacken Links für das Klick-Tracking, wodurch angepasste Schemata nicht mehr funktionieren
  • Sie den Link als Fallback auf eine Webseite benötigen, falls die App nicht installiert ist

Universelle Links (zum Beispiel https://myapp.com/products/123) sind Standard-HTTPS-URLs, die iOS an Ihre App weiterleiten kann, anstatt sie im Browser zu öffnen. Sie erfordern eine serverseitige Konfiguration (eine AASA-Datei) und eine appseitige Einrichtung (Berechtigung für zugehörige Domains).

Verwenden Sie universelle Links, wenn:

  • Sie E-Mails versenden. Ihr ESP verpackt Links für das Klick-Tracking, daher müssen die Links HTTPS sein.
  • Sie SMS oder andere Kanäle nutzen, bei denen Links umgebrochen oder gekürzt werden.
  • Sie den Link als Fallback auf eine Webseite benötigen, wenn die App nicht installiert ist.
  • Sie einen Drittanbieter für Verlinkungen wie Branch oder AppsFlyer nutzen.

Verwenden Sie keine universellen Links, wenn:

  • Sie lediglich Deeplinks aus Push-Benachrichtigungen, In-App-Nachrichten oder Content Cards benötigen. Angepasste Schemata sind einfacher.

„Web-URL in der App öffnen“

Diese Option öffnet eine Webseite in einem modalen WebView innerhalb Ihrer App. Dies wird vollständig vom Braze SDK mithilfe von Braze.WebViewController abgewickelt – Sie müssen keinen Code für die URL-Verarbeitung schreiben.

Verwenden Sie „Web-URL in der App öffnen“, wenn:

  • Sie eine Webseite (z. B. eine Aktion oder einen Artikel) anzeigen möchten, ohne Ihre App zu verlassen.
  • Die URL eine Standard-HTTPS-Webseite ist und kein Deeplink zu einem bestimmten App-Bildschirm.

Verwenden Sie „Web-URL in der App öffnen“ nicht, wenn:

  • Sie zu einer bestimmten Ansicht in Ihrer App navigieren müssen. Verwenden Sie stattdessen ein angepasstes Schema oder einen universellen Link.
  • Die Webseite eine Authentifizierung erfordert oder über Content-Security-Policy-Header verfügt, die die Einbettung verhindern.
Anforderung Details
AASA-Datei Nicht erforderlich
Info.plist Registrieren Sie Ihr Schema unter CFBundleURLTypes und fügen Sie es zu LSApplicationQueriesSchemes hinzu
App-Delegate-Methode Implementieren Sie application(_:open:options:), um die URL zu parsen und die Navigation durchzuführen
Konfiguration des Braze SDK Keine – das SDK öffnet standardmäßig URLs mit angepasstem Schema
Anforderung Details
AASA-Datei Erforderlich – hosten Sie sie unter https://yourdomain.com/.well-known/apple-app-site-association
Zugehörige Domains Fügen Sie applinks:yourdomain.com in Xcode unter Signing & Capabilities hinzu
App-Delegate-Methode Implementieren Sie application(_:continue:restorationHandler:), um NSUserActivity zu verarbeiten
Konfiguration des Braze SDK Setzen Sie configuration.forwardUniversalLinks = true
BrazeDelegate (optional) Implementieren Sie braze(_:shouldOpenURL:) für angepasstes Routing (z. B. Branch)

„Web-URL in der App öffnen“

Anforderung Details
AASA-Datei Nicht erforderlich
App-Delegate-Methode Nicht erforderlich – das SDK übernimmt dies automatisch
Konfiguration des Braze SDK Keine – wählen Sie Open Web URL Inside App im Campaign-Composer aus

Wann Sie eine AASA-Datei benötigen

Eine Apple App Site Association (AASA)-Datei ist nur erforderlich, wenn Sie universelle Links verwenden. Sie teilt iOS mit, welche URLs Ihre App verarbeiten kann.

Sie benötigen eine AASA-Datei, wenn:

  • Sie Deeplinks in E-Mail-Campaigns versenden (da ESPs Links in HTTPS-Klick-Tracking-URLs einbinden).
  • Sie Deeplinks in SMS-Campaigns versenden (da Links möglicherweise zu HTTPS-URLs gekürzt werden).
  • Sie Branch, AppsFlyer oder einen anderen Linking-Anbieter verwenden (da diese ihre eigenen HTTPS-Domains nutzen).
  • Sie universelle Links aus Push-Benachrichtigungen, In-App-Nachrichten oder Content Cards verwenden (weniger verbreitet, aber möglich mit forwardUniversalLinks = true).

Sie benötigen keine AASA-Datei, wenn:

  • Sie ausschließlich Deeplinks mit angepasstem Schema (z. B. myapp://) aus Push-Benachrichtigungen, In-App-Nachrichten oder Content Cards verwenden.
  • Sie die Option Web-URL in der App öffnen nutzen.

Anweisungen zur AASA-Einrichtung finden Sie unter Universelle Links und App-Links.

Wann Sie App-Code zur Verarbeitung von Links benötigen

Welche Delegate-Methode Sie implementieren, hängt von der Art des verwendeten Links ab:

Delegate-Methode Verarbeitet Wann implementieren
application(_:open:options:) Deeplinks mit angepasstem Schema (myapp://) Sie verwenden Deeplinks mit angepasstem Schema aus einem beliebigen Kanal
application(_:continue:restorationHandler:) Universelle Links (https://) Sie verwenden universelle Links aus E-Mail, SMS oder mit forwardUniversalLinks = true
BrazeDelegate.braze(_:shouldOpenURL:) Alle vom SDK geöffneten URLs Sie benötigen eine angepasste Routing-Logik (z. B. Branch, bedingte Verarbeitung, Analytics)

Verwendung von Branch mit Braze

Wenn Sie Branch als Ihren Linking-Anbieter verwenden, sind für Ihre Einrichtung einige zusätzliche Schritte erforderlich, die über die Standardkonfiguration für universelle Links hinausgehen:

  1. Branch SDK: Integrieren Sie das Branch SDK gemäß der Dokumentation von Branch.
  2. Zugehörige Domains: Fügen Sie Ihre Branch-Domain (z. B. applinks:yourapp.app.link) in Xcode unter Signing & Capabilities hinzu.
  3. BrazeDelegate: Implementieren Sie braze(_:shouldOpenURL:), um Branch-Links an das Branch SDK weiterzuleiten, anstatt sie direkt von Braze verarbeiten zu lassen.
  4. Universelle Links weiterleiten: Setzen Sie configuration.forwardUniversalLinks = true in Ihrer Braze-SDK-Konfiguration.

Implementierungsdetails und Anleitungen zur Fehlerbehebung finden Sie unter Branch für Deeplinking.

New Stuff!