Wachsen
Deep Links
Ein Deep Link öffnet einen bestimmten Screen in deiner installierten App, etwa eine Challenge, eine Empfehlungseinladung oder eine Produktseite. Ist die App nicht installiert, gelangt der Besucher stattdessen in den Store, genau wie bei deinem Smart Link. Deep Links sind in Pro, Studio und Lifetime verfügbar. Universal Links und Android App Links brauchen außerdem eine eigene Domain, die Teil von Studio ist.
So funktioniert ein Deep Link
Hänge /open/ und den Pfad in der App an deinen Smart Link an. Der Query-String wird ebenfalls weitergegeben:
https://mapps.one/habitly/open/challenges/30-days?ref=newsletter
| Besucher | Was passiert |
|---|---|
| iPhone oder iPad, mit festgelegtem iOS-URL-Schema | Eine kurze Seite versucht, habitly://challenges/30-days?ref=newsletter zu öffnen. Ist die App nicht installiert, geht es für den Besucher weiter zum App Store. |
| Android oder Huawei, mit festgelegtem Paketnamen | Eine kurze Seite öffnet einen Android-Intent für denselben Pfad, beschränkt auf dein Paket. Chrome öffnet die App, wenn sie installiert ist, und folgt andernfalls dem Fallback zu Google Play. |
| Smartphone oder Tablet ohne Deep-Link-Einstellungen für seine Plattform | Wird direkt zum Fallback weitergeleitet. |
| Desktop-Computer und Bots | Werden zum Smart Link weitergeleitet, der Query-String bleibt erhalten. |
Der Fallback ist das Ziel, zu dem dein Smart Link dieses Gerät gemäß deinen Weiterleitungsregeln schicken würde, mit weitergegebenen UTM-Tags. Hat diese Plattform keinen Store-Link, ist der Fallback die Landingpage. Sind Deep Links gar nicht eingerichtet oder nicht im Plan enthalten, wird jeder Besucher zum Smart Link weitergeleitet.
Pfade dürfen Buchstaben, Ziffern und die Zeichen / _ - . ~ % enthalten. Andere Zeichen werden entfernt. Kodiere daher alles andere per Prozent-Kodierung, etwa Leerzeichen (%20).
Einrichten
Öffne den Tab Deep Links der App und fülle die Felder für die Plattformen aus, die du unterstützt:
| Feld | Beispiel | Verwendet für |
|---|---|---|
| iOS-URL-Schema | habitly:// | Öffnen der App über die Weiterleitungsseite auf iPhone und iPad |
| Apple-Team-ID | A1B2C3D4E5 | Universal Links. Die 10-stellige ID aus den Mitgliedschaftsdetails deines Apple-Developer-Kontos. |
| iOS-Bundle-ID | com.habitly.app | Universal Links |
| Android-Paketname | com.habitly.app | Öffnen der App auf Android- und Huawei-Geräten |
| Android-Schema | habitly | Das Schema, das dein Intent-Filter verarbeitet |
| SHA-256-Zertifikatsfingerabdrücke | 14:6D:E9:83:...:44:E5 | Android App Links. Füge einen oder mehrere hinzu, getrennt durch Kommas, Leerzeichen oder Zeilenumbrüche. |
habitly. Lässt du es leer, wird https verwendet, und der erste Teil des Pfads wird zum Host (https://challenges/30-days). Das funktioniert nur, wenn dein Intent-Filter genau das erwartet.Schema in deiner App registrieren
iOS, in Info.plist:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>habitly</string>
</array>
</dict>
</array>
Android, in AndroidManifest.xml:
<activity android:name=".MainActivity" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="habitly" />
</intent-filter>
</activity>
Lies in deiner App die eingehende URL aus, leite zum passenden Screen weiter und lies alle Query-Parameter aus, die du brauchst. Schicke unbekannte Pfade zum Startbildschirm, denn Leute bearbeiten URLs.
Universal Links und Android App Links
Schema-Links zeigen zuerst eine kurze Weiterleitungsseite, und iOS fragt den Besucher möglicherweise nach einer Bestätigung. Verifizierte Links überspringen diesen Schritt: Ist die App installiert, öffnet das System sie direkt. Die Verifizierung braucht eine Domain, die ausschließlich zu deiner App gehört, daher funktioniert sie auf deiner eigenen Domain. Sobald get.habitly.app verbunden ist, liefert mapps.one die Zuordnungsdateien für dich aus:
| Datei | Erstellt aus |
|---|---|
https://get.habitly.app/.well-known/apple-app-site-association(auch unter /apple-app-site-association) | Apple-Team-ID und Bundle-ID |
https://get.habitly.app/.well-known/assetlinks.json | Android-Paketname und SHA-256-Fingerabdrücke |
Die Apple-Datei deckt jeden Pfad unter /open/ ab:
{
"applinks": {
"details": [
{
"appIDs": ["A1B2C3D4E5.com.habitly.app"],
"components": [
{ "/": "/open/*", "comment": "Deep links created with mapps.one" }
]
}
]
},
"webcredentials": { "apps": ["A1B2C3D4E5.com.habitly.app"] }
}
Die Android-Datei:
[
{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.habitly.app",
"sha256_cert_fingerprints": [
"14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"
]
}
}
]
Jede Datei liefert „404 Not Found“, bis ihre Felder gültig sind: für Apple eine 10-stellige Team-ID und eine Bundle-ID, für Android ein Paketname mit mindestens einem Fingerabdruck im Format AA:BB:... (32 Paare). Verwende den Fingerabdruck des Play-App-Signaturschlüssels aus Play Console → App integrity und füge auch deinen Upload-Schlüssel hinzu, wenn du lokal signierte Builds testest. Die Dateien werden eine Stunde lang zwischengespeichert. Apple speichert sie zusätzlich auf eigenen Servern zwischen. Installiere die App daher neu, um Änderungen zu testen.
App konfigurieren
iOS: Füge die Capability Associated Domains mit applinks:get.habitly.app hinzu.
Android: Füge einen verifizierten Intent-Filter für deine Domain hinzu:
<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="get.habitly.app" android:pathPrefix="/open/" />
</intent-filter>
Verwende dann Links wie https://get.habitly.app/open/challenges/30-days in deinen Kampagnen. Ist die App nicht installiert, lädt der Browser die Seite, und derselbe Fallback-Ablauf greift.
mapps.one teilen. Links unter mapps.one/habitly/open/ funktionieren weiterhin über die Weiterleitungsseite. Deep-Link-URLs im Dashboard und in der API verwenden mapps.one. Ersetze daher den Host durch deine Domain, wenn du verifizierte Links möchtest.Analysen
Ein Aufruf wird unter Deep-Link-Aufrufe gezählt, wenn ein Smartphone oder Tablet eine /open/-URL lädt und mapps.one versucht, die App zu öffnen. Der Fallback zum Store wird nicht ein zweites Mal gezählt. Verifizierte Links, die die App direkt öffnen, erreichen mapps.one nie und werden daher nicht gezählt. Nutze dafür deine eigene App-Analyse.