Pāriet uz dokumentāciju

Dziļās saites

Kixo Deep Links novirza katru lietotāju uz labāko pieejamo galamērķi. Ja lietotne ir instalēta, tā pati zīmolotā HTTPS saite atver pareizo ekrānu lietotnē. Pretējā gadījumā tā var atvērt jūsu vietni, App Store vai Google Play rezerves galamērķi. Verificētu lietotnes atvēršanu apstrādā operētājsistēma; ja saite nonāk pārlūkā, Kixo izmanto šai saitei saglabāto rezerves galamērķi.

Sāciet Kixo

Atveriet Projekta iestatījumi → Dziļās saites, izveidojiet adresi un nokopējiet tai parādīto konfigurāciju. Panelī redzamais host ir vienīgais pareizais avots visiem tālākajiem fragmentiem.

Kā atveras saite

Lietotāja ierīceRezultāts
Lietotne ir instalēta, un App Link konfigurācija ir derīgaLietotne atveras tieši saites galamērķī.
Lietotne nav instalētaKixo izmanto saitei izvēlēto vietnes vai veikala rezerves galamērķi.
Datora pārlūksAtveras vietnes rezerves galamērķis.
Lietotnes konfigurācija nav pabeigtaBojātas lietotnes uzvednes vietā atveras drošais rezerves galamērķis.

Izmantojiet precīzo zīmoloto host

Kixo saites host pieder vienam projektam un izskatās kā yourbrand.kixo.cc. Izstrādes projektiem var būt cita Kixo pārvaldīta galotne. Vienmēr kopējiet pilno host no paneļa.

Aizstājējzīmes nedarbojas

Konfigurējiet yourbrand.kixo.cc, nevis *.kixo.cc un nevis kixo.cc. Android un iOS verificē tieši to host, kuru lietotājs atver.

Vietne un QR handoff

Web SDK automātiski atpazīst Kixo saites atvēršanu. Izmantojiet getLinkData() tikai tad, ja jūsu vietnei savā maršrutētājā ir vajadzīgs atrisinātais kampaņas konteksts vai pielāgoti parametri.

js
const link = Kixo.getLinkData();

if (link?.params.product_id) {
  // URL values are user-controlled. Allowlist them before routing.
  router.openProduct(link.params.product_id);
}

Mobilajā tīmeklī piedāvājiet “Open in app”

Nododiet pilno publisko saites URL, ko atgriež Kixo. Baneris tiek rādīts tikai mobilajā tīmeklī un ļauj Kixo saitei izvēlēties instalēto lietotni, veikalu vai vietnes galamērķi.

js
Kixo.showSmartBanner({
  linkId: 'YOUR_KIXO_LINK_ID',
  linkUrl: 'https://YOUR_EXACT_KIXO_HOST/link/YOUR_LINK_SLUG',
  title: 'Continue in the app',
});

Turpiniet datora sesiju ar QR kodu

Ja QR kods tiek rādīts jūsu vietnē, lūdziet Kixo izveidot handoff jau esošai saitei, nevis veidojiet URL paši. Kixo izmantos šai saitei saglabātos lietotnes un vietnes galamērķus.

js
const handoff = await Kixo.createQrHandoff({
  linkId: 'YOUR_KIXO_LINK_ID',
  params: {
    product_id: '42',
  },
});

qrCode.render(handoff.url);

Izmantojiet Kixo atgrieztās vērtības

Nododiet saites ID no Kixo un atainojiet atgriezto URL bez izmaiņām. Papildu params pievieno kontekstu jūsu atļautajam lietotnes vai vietnes maršrutam; tās neaizstāj saites galamērķi. Nenododiet lietotāja ID vai ierīces ID.

Android App Links

Pirms rediģējat kodu, saglabājiet Android pakotnes nosaukumu un katru lietotnes parakstīšanas SHA-256 pirkstu nospiedumu sadaļā Lietotnes un iestatīšana. Ja relīzi paraksta Google Play, pievienojiet arī Play App Signing pirkstu nospiedumu, kā arī jebkuru pirkstu nospiedumu, ko izmanto tiešajām vai iekšējām būvēm.

1. Pievienojiet resursdatoru manifestam

Pievienojiet šo intent filtru aktivitātei, kas pārvalda lietotnes navigāciju. Aizstājiet tikai host vietturi.

xml
<activity
    android:name=".MainActivity"
    android:exported="true">
    <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="YOUR_EXACT_KIXO_HOST"
            android:pathPrefix="/link/" />
    </intent-filter>
</activity>

2. Pārsūtiet siltās atvēršanas

Kixo SDK nolasa auksti palaistu App Link. Kad Android atkārtoti izmanto esošu aktivitāti, pārsūtiet tai jauno intent, lai siltā atvēršana izmantotu to pašu atribūcijas un maršrutēšanas ceļu.

kotlin
import android.content.Intent
import io.kixo.sdk.Kixo

override fun onNewIntent(intent: Intent) {
    super.onNewIntent(intent)
    setIntent(intent)
    intent.dataString?.let { url ->
        Kixo.handleDeepLink(url, source = "applink")
    }
}

3. Pārbaudiet Android

Pēc manifesta maiņas pārinstalējiet lietotni, tad lieciet Android verificēt host un pārbaudiet rezultātu.

bash
adb shell pm verify-app-links --re-verify YOUR_ANDROID_PACKAGE
adb shell pm get-app-links YOUR_ANDROID_PACKAGE

# The exact host should be "verified".
adb shell am start -W \
  -a android.intent.action.VIEW \
  -d "https://YOUR_EXACT_KIXO_HOST/link/YOUR_LINK_SLUG"

Ieteikums

Pārlūka izvēlne parasti nozīmē, ka nesakrīt precīzais host, pakotnes nosaukums vai parakstīšanas pirkstu nospiedums. Pirms maināt lietotnes navigācijas kodu, pārbaudiet visas trīs vērtības.

iOS Universal Links

Saglabājiet lietotnes bundle ID un Apple team ID sadaļā Lietotnes un iestatīšana. Xcode ieslēdziet Associated Domains spēju tam pašam app target un tai pašai parakstīšanas konfigurācijai, ko izmanto instalētā būve.

1. Pievienojiet saistīto domēnu

applinks:YOUR_EXACT_KIXO_HOST

2. Pārsūtiet aukstās un siltās atvēršanas saites

Izvēlieties lietotnes izmantoto dzīves ciklu. Abos piemēros atrisinātais galamērķis tiek nodots jūsu maršrutētājam; Kixo neaizstāj lietotnes navigāciju.

import Kixo

WindowGroup {
    ContentView()
        .onKixoDeepLink { link in
            guard link.phase == .resolved else { return }
            router.open(link.targetPath ?? link.path)
        }
}

3. Pārbaudiet iOS

  1. Izdzēsiet lietotni no ierīces un pēc tam instalējiet parakstīto būvi.
  2. Atveriet īstu Kixo saiti no Notes, Messages vai Safari. Neizmantojiet ielīmēšanu Safari adreses joslā kā vienīgo testu.
  3. Pārliecinieties, ka auksts pieskāriens atver lietotni paredzētajā ekrānā.
  4. Atstājiet lietotni atvērtu, vēlreiz pieskarieties saitei un pārbaudiet silto atvēršanu.
  5. Pārliecinieties, ka saites atvēršana parādās Kixo.

Maršrutēšanu atstājiet lietotnē

Kixo saite var ietvert galamērķi, piemēram, /products/42. Zināmos ceļus sasaistiet ar saviem ekrāniem un saglabājiet lietotnē esošās piekļuves pārbaudes. Neizmantojiet atrisināto vērtību kā universālu URL atvērēju.

Kixo.setDeferredDeepLinkListener { link ->
    if (link?.phase != KixoDeepLinkPhase.RESOLVED) return@setDeferredDeepLinkListener
    when {
        link.targetUrl?.startsWith("/products/") == true ->
            router.openProduct(link.targetUrl.substringAfterLast("/"))
        link.targetUrl == "/account" ->
            router.openAccount()
    }
}

Dodiet to kodēšanas asistentam

Aizstājiet piecus vietturus ar vērtībām no Projekta iestatījumi → Lietotnes & iestatīšana un Dziļās saites, pēc tam ielīmējiet visu aprakstu Codex, Claude Code, Cursor, Windsurf vai citā kodēšanas asistentā.

text
Add Kixo Deep Links to this app.

Project values:
- Kixo branded host: YOUR_EXACT_KIXO_HOST
- Android package name: YOUR_ANDROID_PACKAGE
- Android SHA-256 signing fingerprints: YOUR_ANDROID_FINGERPRINTS
- iOS bundle ID: YOUR_IOS_BUNDLE_ID
- Apple team ID: YOUR_APPLE_TEAM_ID

Requirements:
1. Use the exact branded host above. Do not replace it with kixo.cc, dixo.dev, a wildcard, or the website domain.
2. Keep the app's existing navigation. Kixo resolves and measures the link; the app decides which screen to show.
3. Android:
   - add an android:autoVerify App Links intent filter for https://YOUR_EXACT_KIXO_HOST/link/
   - keep the package name and every release signing fingerprint in Kixo Apps & setup
   - forward warm Activity.onNewIntent URLs to Kixo.handleDeepLink(url, source = "applink")
4. iOS:
   - add applinks:YOUR_EXACT_KIXO_HOST to the app target's Associated Domains entitlement
   - keep the bundle ID and Apple team ID in Kixo Apps & setup
   - for SwiftUI, attach .onKixoDeepLink to the root view
   - for UIKit scenes, forward cold connectionOptions and warm NSUserActivity callbacks to Kixo
5. Route only known in-app paths. Do not blindly open an arbitrary URL returned by a link.
6. Test a cold open and a warm open on a physical device or emulator. Confirm the app opens directly and the link open appears in Kixo.

Return:
- the files changed
- the exact host configured in each platform
- cold-open and warm-open test results
- anything still requiring a dashboard or signing-account change

Ko asistents nedrīkst minēt

Zīmolotais host, pakotnes nosaukums, parakstīšanas pirkstu nospiedumi, bundle ID un Apple team ID nāk no jūsu lietotnes un Kixo projekta. Asistents var sasaistīt kodu, bet tam jāapstājas un jāziņo par trūkstošu vērtību, nevis tā jāizdomā.

Relīzes kontrolsaraksts

  • Precīzais Kixo host ir norādīts gan Android, gan iOS konfigurācijā.
  • Android ziņo, ka host ir verificēts relīzes pakotnei.
  • Relīzes parakstīšanas pirkstu nospiedumi ir saglabāti Kixo.
  • iOS entitlement ir iekļauts parakstītajā lietotnes būvē.
  • Gan aukstā, gan siltā atvēršana nonāk paredzētajā ekrānā.
  • Vietnes vai veikala rezerves galamērķis darbojas arī bez instalētas lietotnes.
  • Saites atvēršana parādās Kixo analītikā.

Saistītie ceļveži