Home Blog Deep Link Setup: iOS & Android sicher einrichten 2026

Deep Link Setup: iOS & Android sicher einrichten 2026

Deep Link Setup ist eine der technisch anspruchsvollsten, aber gleichzeitig wirkungsvollsten Maßnahmen in der modernen App-Entwicklung. Wer Nutzer direkt in den richtigen Bereich seiner App führen möchte – statt auf die Startseite – kommt an einem sauberen Deep Link Setup nicht vorbei. Gerade für KMU mit eigenem Mobile-Produkt gilt: Fehler bei der Konfiguration kosten Nutzer, Conversions und Vertrauen. Dieser Guide zeigt, wie iOS und Android korrekt eingerichtet werden – von der Domain-Verifikation bis zur Fehlerbehandlung.


Ein Deep Link ist eine URL, die nicht einfach eine App öffnet, sondern direkt zu einem bestimmten Inhalt innerhalb der App navigiert – zum Beispiel einem Produkt, einem Konto-Bereich oder einer Buchungsmaske. Das klingt simpel, ist technisch jedoch mehrstufig.

Ohne korrektes Deep Link Setup passiert Folgendes: Der Nutzer klickt auf einen Link in einer E-Mail oder Push-Benachrichtigung, wird aber auf die App-Startseite oder – schlimmer – auf einen Fehlerbildschirm weitergeleitet. Laut einer Analyse von Branch.io verlieren Apps ohne funktionierendes Deep Linking bis zu 40 % der Nutzer beim Einstieg aus externen Quellen.

Für KMU bedeutet das konkret: Jede Kampagne, jede E-Mail, jeder QR-Code, der eine App-Aktion auslösen soll, hängt von einem funktionierenden Deep Link Setup ab.


Bevor die eigentliche Konfiguration beginnt, müssen Entscheider den Unterschied zwischen zwei technischen Ansätzen verstehen:

Custom URL Schemes (Legacy-Ansatz)

Custom URL Schemes wie `meineshop://produkt/123` funktionieren auf beiden Plattformen, haben aber einen entscheidenden Nachteil: Jede App kann dasselbe URL Scheme beanspruchen. Es gibt keine Verifikation. Browser können diese URLs nicht öffnen, wenn die App nicht installiert ist – der Nutzer sieht schlicht eine Fehlermeldung.

Einsatzbereich heute:

Der moderne Standard heißt auf iOS Universal Links und auf Android App Links. Beide Verfahren basieren auf demselben Prinzip: Die Domain, unter der der Link erreichbar ist, muss die App durch eine spezifische Konfigurationsdatei autorisieren. Das verhindert Missbrauch und funktioniert nahtlos – auch wenn die App nicht installiert ist, öffnet der Browser automatisch die entsprechende Website.


Schritt 1: Apple App Site Association (AASA) erstellen

Die zentrale Datei für iOS heißt `apple-app-site-association` – ohne Dateiendung. Sie muss unter `https://deinedomain.de/.well-known/apple-app-site-association` erreichbar sein.

Beispiel-Inhalt:

json
{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appIDs": ["TEAMID.com.deinunternehmen.app"],
        "components": [
          {
            "/": "/produkte/*",
            "comment": "Öffnet alle Produktseiten direkt in der App"
          },
          {
            "/": "/konto/*",
            "comment": "Kontobereich"
          }
        ]
      }
    ]
  }
}

Wichtige Details:

Schritt 2: Associated Domains in Xcode aktivieren

Im Xcode-Projekt unter Signing & Capabilities muss die Capability Associated Domains hinzugefügt werden. Einzutragen ist dann:

applinks:deinedomain.de

Für Subdomains separat:

applinks:shop.deinedomain.de

Schritt 3: AppDelegate oder SceneDelegate anpassen

In Swift wird die eingehende URL in `application(_:continue:restorationHandler:)` verarbeitet:

swift
func application(_ application: UIApplication,
                 continue userActivity: NSUserActivity,
                 restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    guard userActivity.activityType == NSUserActivityTypeBrowsingWeb,
          let url = userActivity.webpageURL else {
        return false
    }
    // URL parsen und Navigation auslösen
    handleDeepLink(url: url)
    return true
}

Best Practice: Trenne das URL-Parsing immer in einen eigenen `DeepLinkRouter`, der unabhängig vom AppDelegate getestet werden kann.


Das Android-Äquivalent zur AASA-Datei heißt `assetlinks.json` und muss unter `https://deinedomain.de/.well-known/assetlinks.json` liegen.

Beispiel:

json
[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "com.deinunternehmen.app",
    "sha256_cert_fingerprints":
    ["AA:BB:CC:DD:..."]
  }
}]

Den SHA-256-Fingerprint der Signing-Zertifikate erhält man mit:

bash
keytool -list -v -keystore release.keystore -alias key0

Kritischer Fehler, der häufig passiert: Der Fingerprint des Debug-Keystores unterscheidet sich vom Release-Keystore. Viele Teams testen nur mit Debug und wundern sich, warum es im Play Store nicht funktioniert. Immer beide Fingerprints eintragen, solange aktiv entwickelt wird.

Schritt 2: Intent Filter im AndroidManifest.xml

xml
<activity android:name=".MainActivity">
  <intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data
      android:scheme="https"
      android:host="deinedomain.de"
      android:pathPrefix="/produkte" />
  </intent-filter>
</activity>

`android:autoVerify="true"` ist entscheidend – ohne dieses Attribut zeigt Android den App-Auswahl-Dialog, anstatt die App direkt zu öffnen.

Schritt 3: Eingehende Intents verarbeiten

In Kotlin:

kotlin
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    val action = intent.action
    val data = intent.data
    if (Intent.ACTION_VIEW == action && data != null) {
        handleDeepLink(data)
    }
}

Ein fehlerhaftes Deep Link Setup ist in der Praxis oft nicht sofort sichtbar. Die App öffnet sich, aber der Nutzer landet an der falschen Stelle. Oder schlimmer: Sie öffnet sich gar nicht. Die häufigsten Ursachen:

1. HTTP statt HTTPS – Beide Plattformen verlangen zwingend HTTPS für verifizierte Links. HTTP-Domains werden nicht verifiziert.

2. Weiterleitungen in der AASA/assetlinks.json – Apple und Google rufen diese Dateien direkt ab. Auch eine einzige 301-Weiterleitung lässt die Verifikation scheitern.

3. Veraltete Zertifikat-Fingerprints – Sobald ein neues Signing-Zertifikat ausgestellt wird, muss die `assetlinks.json` aktualisiert werden.

4. Fehlende Pfad-Patterns – Nur die Pfade, die explizit in der Konfigurationsdatei stehen, werden als verifizierte App Links behandelt. Alle anderen fallen auf den Browser zurück.

5. App-Neuinstallation ohne erneute Verifikation – Android führt die Verifikation bei der Installation durch. Bei Problemen hilft es, die App zu deinstallieren und neu zu installieren.

6. Fehlende Fallback-Seite – Wenn die App nicht installiert ist, muss unter der verlinkten URL eine sinnvolle Webseite erscheinen. Ein 404 schadet sowohl der UX als auch dem SEO.


Ein sauberes Deep Link Setup ist keine einmalige Aufgabe – es ist Teil der App-Architektur. Wer das frühzeitig berücksichtigt, spart sich spätere Refactorings.

Routing-Schicht sauber trennen

Empfehlenswert ist ein dedizierter `DeepLinkRouter` oder `NavigationCoordinator`, der:

Deferred Deep Links lösen ein spezielles Problem: Ein Nutzer klickt auf einen Deep Link, hat die App aber noch nicht installiert. Nach der Installation soll er trotzdem direkt zum verlinkten Inhalt weitergeleitet werden.

Das funktioniert nicht nativ über Universal Links oder App Links, sondern erfordert eine Drittanbieter-Lösung oder eine eigene Implementierung über einen Referral-Token im Install-Attributionsprozess. Bekannte Dienste dafür sind Firebase Dynamic Links (wird 2025 eingestellt) oder Branch.io.

Für KMU empfiehlt sich hier eine einfache Eigenimplementierung: Der Deep-Link-Pfad wird beim Klick in einem Cookie oder einer Session-Variable gespeichert und nach erfolgreicher Installation abgerufen.


Ein Deep Link Setup ist erst dann vollständig, wenn es systematisch getestet und überwacht wird. Nützliche Tools:

Richten Sie zudem ein Monitoring ein, das regelmäßig prüft:


Ein durchdachtes Deep Link Setup ist weit mehr als eine technische Konfigurationsaufgabe. Es ist die Grundlage für jede Marketing-Kampagne, jede Push-Benachrichtigung und jede E-Mail-Aktion, die Nutzer direkt in die App führen soll. KMU, die hier sauber arbeiten, verschaffen sich einen messbaren Vorteil: höhere Conversion-Raten, bessere Nutzererfahrung und weniger Abbrüche.

Die wichtigsten Punkte zusammengefasst:

Für eine detaillierte Betrachtung der weiteren Aspekte rund um das Thema empfehlen sich die Beiträge im Pilecode Blog – dort finden Sie unter anderem Guides zu App Navigation, Tieflinking und mobilen Strategien für KMU.


Haben Sie Fragen zur Umsetzung des Deep Link Setups in Ihrer konkreten App-Infrastruktur? Die Experten von Pilecode unterstützen KMU bei der vollständigen Implementierung – von der Architekturentscheidung bis zum Go-live.

Jetzt kostenloses Erstgespräch vereinbaren →


Haben Sie Fragen zu diesem Thema? Jetzt Kontakt aufnehmen.