Deep Link: nima, havola turlari va ishlash prinsipi

Muallif: IT Sectr Nashr etilgan: 2026-05-14 O'qish vaqti: 9 daq

Deep Link (chuqur havola) — foydalanuvchini mobil ilova ichidagi ma’lum ekran yoki kontentga yo‘naltiradigan, asosiy ekranni chetlab o‘tadigan URL. Oddiy veb-sayt havolasidan farqli o‘laroq, deep link ilovani faollashtiradi va darhol maqsadli kontentni ochadi. Android Developers ma’lumotlariga ko‘ra, to‘g‘ri sozlangan deep linklar kontentgacha bo‘lgan qadamlar sonini kamaytirish orqali maqsadli harakat konversiyasini 30–50% ga oshiradi.

Asosiy

  • Deep Link — asosiy sahifani emas, balki ilovaning ma’lum ekranini ochadigan URL
  • URI-sxema (myapp://profile/123) — klassik deep link usuli, ikkala platformada ishlaydi
  • Deferred Deep Link — ilova o‘rnatilgandan keyin ishga tushadigan va kontekst uzatadigan havola
  • Universal Link (iOS) va App Link (Android) — domen tekshiruvi bilan deep link evolyutsiyasi
  • Kontekstli deep link — qo‘shimcha parametrlarni uzatadi: promo kod, referrer, trafik manbai

Deep Link (chuqur havola) — bosilganda veb-sahifani emas, balki mobil ilova ichidagi ma’lum ekranni ochadigan URI. Texnologiya mobil platformalarning fundamental muammosini hal qiladi: brauzer to‘g‘ridan-to‘g‘ri ilova ekranini ocholmaydi, deep link esa veb va native kod o‘rtasida ko‘prik yaratadi. Deep linksiz foydalanuvchi har doim asosiy ekranga tushadi va kerakli kontentga qo‘lda navigatsiya qilishi kerak.

Deep link arxitekturasi ikki qismdan iborat: sxema (scheme) qaysi ilova havolani qayta ishlashini aniqlaydi, yo‘l (path) esa ilova ichidagi ma’lum resursni — mahsulot, maqola, foydalanuvchi profili yoki sozlamalar bo‘limini ko‘rsatadi. So‘rov parametrlari (?source=push&campaign=summer) analitika, shaxsiylashtirish va kampaniya atributsiyasi uchun qo‘shimcha kontekst uzatadi.

Deep link va oddiy havolani farqlash muhim. Oddiy havola (https://example.com/product/42) brauzerda ochiladi va sahifaning veb versiyasiga olib boradi. Deep link (myapp://product/42) o‘rnatilgan ilova bilan aynan bir xil kontentni native ekranda ochadi, agar ilova bo‘lmasa — xato ko‘rsatadi. Aynan muammosiz fallback muammosini hal qilish uchun Universal Link (iOS) va App Link (Android) yaratilgan.

Turli vazifalar turli xil deep link turlarini talab qiladi. Ba’zi havolalar faqat o‘rnatilgan ilova bilan ishlaydi, boshqalari o‘rnatishni kutishi mumkin, uchinchilari analitik kontekst uzatadi. Turning tanlovi foydalanish stsenariysiga bog‘liq: reklama kampaniyasi, push bildirishnomasi, kontent almashish yoki email yuborish.

Oddiy Deep Link (Standard Deep Link)

Standard Deep Link — faqat ilova allaqachon qurilmada o‘rnatilgan bo‘lsa ishlaydigan asosiy tur. Foydalanuvchi myapp://product/42 havolasini bosadi, system ro‘yxatdan o‘tgan sxemani aniqlaydi va ilovani kerakli ekranda ochadi. Agar ilova o‘rnatilmagan bo‘lsa — brauzer “Sahifa topilmadi” xatosini ko‘rsatadi yoki hech narsa qilmaydi. Bu tur allaqachon o‘rnatilgan ilova ichidagi navigatsiya uchun mos keladi.

Standart deep link sozlash oddiy: URI-sxemani manifestda (Android) yoki Info.plist da (iOS) ro‘yxatdan o‘tkazish kifoya. Server tekshiruvi yoki SSL sertifikatlari talab qilinmaydi. Ammo aynan fallback yo‘qligi sababli bu tur marketing kampaniyalari uchun eskirgan hisoblanadi — ilovasiz foydalanuvchilardan trafik yo‘qotilishi 60% gacha yetadi.

Deferred Deep Link (kechiktirilgan chuqur havola)

Deferred Deep Link oddiy deep linklarning asosiy muammosini hal qiladi: ilova o‘rnatilmagan bo‘lsa ham ishlaydi. Foydalanuvchi havolani bosadi → sahifani (landing yoki App Store/Google Play) ko‘radi → ilovani o‘rnatadi → birinchi ishga tushirishda ilova asl havolaning kontekstini oladi va kerakli ekranni ochadi. Texnologiya kontekstni birinchi ishga tushirishgacha serverda saqlaydigan vositachi SDK (AppsFlyer, Branch, Adjust) ni talab qiladi.

Branch — deferred deep link uchun eng mashhur platformalardan biri. Barcha platformalarda ishlaydigan yagona havolani taqdim etadi: foydalanuvchining OT sini aniqlaydi, ilovalar do‘koniga yo‘naltiradi, o‘rnatishdan keyin kontekstni uzatadi (promo kod, mahsulot identifikatori, kampaniya manbai). Branch (2024) ma’lumotlariga ko‘ra, deferred deep link reklama kampaniyalari konversiyasini 40–70% ga oshiradi.

Contextual Deep Link (kontekstli chuqur havola)

Contextual Deep Link — kontekst parametrlari bilan to‘ldirilgan oddiy yoki deferred deep link: trafik manbai (source), kampaniya (campaign), promo kod, referrer, hamkor identifikatori. Parametrlar URL da uzatiladi va ilova tomonidan shaxsiylashtirish uchun qayta ishlanadi: xush kelibsiz bonusini ko‘rsatish, chegirma bilan mahsulotni ochish, o‘rnatish analitikasini yozib olish.

UTM belgilari (utm_source, utm_medium, utm_campaign) — kontekst uzatishning standart usuli. Mobil qurilmalarda kontekstli deep link atributsiya uchun juda muhim: ularsiz ilova egasi qaysi kanal foydalanuvchini olib kelganini bilmaydi — organik trafik, Facebook reklamasi, email yuborish yoki QR kod. Sifatli atributsiya MMP (Mobile Measurement Partner) bilan integratsiyani talab qiladi.

Deep Link turiO‘rnatish talab qiladiKutishni qo‘llab-quvvatlaydiKontekst
StandardHaYo‘qFaqat URL da
DeferredYo‘qHaServer saqlash
ContextualHar qandayHar qandayUTM + parametrlar

iOS deep linkni ikki mexanizm orqali qo‘llab-quvvatlaydi: eski Custom URL Scheme va zamonaviy Universal Link (iOS 9+). Custom URL Scheme Info.plist da maxsus sxemani ro‘yxatdan o‘tkazish printsipi bilan ishlaydi. Ilova myapp:// ni ro‘yxatdan o‘tkazadi va iOS bunday havolani bosganda ilovani ochadi. Muammo: agar sxema hech qanday ilova tomonidan ro‘yxatdan o‘tkazilmagan bo‘lsa, brauzer xato ko‘rsatadi.

Qayta ishlash deep link iOS da AppDelegate application(_:open:options:) yoki SceneDelegate scene(_:openURLContexts:) metodi orqali amalga oshiriladi. Dasturchi URL ni ajratib oladi, yo‘l va parametrlarni tahlil qiladi, so‘ng tegishli ekranga navigatsiya qiladi. SwiftUI ishlatilganda, qayta ishlash OpenURLAction yoki onChange(of: openURL) orqali amalga oshiriladi. Holatni to‘g‘ri qayta ishlash muhim: ilova ishga tushirilmagan, minimallashtirilgan yoki faol bo‘lishi mumkin.

Security iOS da qattiq: Custom URL Scheme bir xil sxemani ro‘yxatdan o‘tkazgan har qanday ilova tomonidan ushlanishi mumkin. Bu potentsial zaiflik (URL Scheme hijacking). Shuning uchun Apple Universal Linkni xavfsizroq alternativ sifatida tavsiya qiladi: faqat tasdiqlangan domen egasi havolalarni ilova bilan bog‘lashi mumkin. Universal Link haqida batafsil — Universal Link maqolasida.

Android deep linkni AndroidManifest.xml dagi Intent Filter orqali amalga oshiradi. Ilova ma’lum sxemani (myapp://) yoki ma’lum host va yo‘llarni qayta ishlaydigan Activity ni belgilaydi. Foydalanuvchi deep linkni bosganda, Android mos Intent Filter ga ega Activity ni qidiradi va uni ochadi. Agar bir nechta mos Activity bo‘lsa — system ilova tanlash dialogini ko‘rsatadi.

xml
// AndroidManifest.xml — Deep Link uchun Intent Filter
<activity
    android:name=".ui.ProductActivity"
    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="myapp"
            android:host="product"
            android:pathPrefix="/" />
    </intent-filter>
</activity>

Qayta ishlash Android da deep link Activity.onCreate() yoki onNewIntent() metodi orqali amalga oshiriladi. Dasturchi Intent oladi, URI ni ajratib oladi va navigatsiyani chaqiradi. Jetpack Navigation uchun Navigation Deep Link komponenti navigatsiya grafigida deep linkni deklarativ tavsiflash imkonini beradi. Android App Link (Android 6.0+) — Digital Asset Links orqali tekshiruv bilan deep link evolyutsiyasi, ilova tanlash dialogini yo‘q qiladi.

Android 12+ o‘zgarishlarini hisobga olish muhim: API 31 dan boshlab, system deep linkni qayta ishlaydigan Activity lar uchun exported=true ni aniq ko‘rsatishni talab qiladi va Intent Filter to‘g‘riligini tekshiradi. Google Play Store nashr qilishda App Link tekshiruvini tekshiradi. Tekshiruvsiz, Google deep linklar saytning mavjud bo‘lmagan sahifalariga olib borsa, yangilanishni rad etishi mumkin.

Sozlash deep link ikkala platforma uchun umumiy bo‘lgan bir necha bosqichni o‘z ichiga oladi. Birinchi qadam — sxema va URL strukturasini aniqlash. Universal Link va App Link bilan moslik uchun https sxemasidan (maxsus sxema o‘rniga) foydalanish tavsiya etiladi. URL strukturasi veb-sayt strukturasini takrorlashi kerak: /product/42, /profile/john, /settings/notifications. Bu kontentni qo‘llab-quvvatlash va qidiruv tizimlari tomonidan indeksatsiyani osonlashtiradi.

Ikkinchi bosqich — ilova kodida deep linkni qayta ishlash. Android uchun nav_graph da deklarativ deep linklar bilan Jetpack Navigation tavsiya etiladi. iOS uchun — OpenURLAction bilan SwiftUI NavigationStack. Ilovaning uchta holatini qayta ishlash muhim: cold start (ilova ishga tushirilmagan), warm start (minimallashtirilgan) va active (ekranda). Har bir holat turli navigatsiya mantig‘ini talab qiladi.

  • Aniqlash sxema va URL strukturasini (myapp:// yoki https://your.domain/)
  • Ro‘yxatdan o‘tkazish sxemani manifestda (Android) yoki Info.plist da (iOS)
  • Amalga oshirish qayta ishlashni Activity yoki AppDelegate/SwiftUI da
  • Sozlash ilova o‘rnatilmagan bo‘lsa fallback
  • Sinash barcha uch holatni: cold start, warm start, active

Sinov deep link — alohida vazifa. Android Studio Intent Filter tekshiruvi uchun App Links Assistant vositasini taqdim etadi. iOS da sinov Xcode orqali ishga tushirish sxemasi argumentlari bilan URL uzatish orqali amalga oshiriladi. CI tekshiruvini sozlash tavsiya etiladi: deep link orqali avtomatik o‘tish va kutilgan ekran ochilganligini tekshirish. Deferred deep link uchun sinov to‘liq tsikl “o‘rnatish → birinchi ishga tushirish → kontekst” ni o‘z ichiga oladi. Sinovsiz deep link ko‘pincha ilovada navigatsiya yangilanishlari vaqtida buziladi.

Tez-tez beriladigan savollar

Deep link oddiy havoladan qanday farq qiladi?

Oddiy havola (https://site.com/page) brauzerda ochiladi. Deep link (myapp://page yoki tekshiruv bilan https://site.com/page) mobil ilova ichidagi ekranni ochadi. Deep link kontekstni ham uzatishi mumkin: promo kod, trafik manbai, referal identifikatori.

URI-sxema nima va nima uchun kerak?

URI-sxema — qaysi ilova havolani qayta ishlashi kerakligini aniqlaydigan URL prefiksi (masalan, myapp://, vk://, tg://). System marshrutlash uchun sxemadan foydalanadi: bu sxemani ro‘yxatdan o‘tkazgan ilovani topadi va URL ni qayta ishlash uchun unga uzatadi.

Deferred deep link qanday ishlaydi?

Foydalanuvchi havolani bosadi → xizmat (Branch, AppsFlyer) kontekstni eslab qoladi → App Store/Google Play ga yo‘naltiradi → o‘rnatish va birinchi ishga tushirishdan so‘ng SDK saqlangan kontekstni ilovaga uzatadi → ilova kerakli ekranni ochadi, go‘yo foydalanuvchi allaqachon ilovaga ega bo‘lgandek.

Deep linkni o‘rnatilmagan ilova bilan ishlatish mumkinmi?

Oddiy deep link — yo‘q. Deferred deep link — ha, ilovalar do‘koniga yo‘naltiruvchi va kontekstni saqlaydigan oraliq sahifa orqali. Universal Link va App Link ilova o‘rnatilmagan bo‘lsa saytni fallback sifatida ochadi.

Deep linkni haqiqiy qurilmalarda qanday sinash mumkin?

Android da adb dan foydalaning: adb shell am start -W -a android.intent.action.VIEW -d “myapp://product/42”. iOS da — xcrun simctl openurl booted “myapp://product/42”. Ikkala platforma uchun Firebase Dynamic Links va Branch sinov konsollari mavjud.

Xulosa

  • Deep Link — asosiy sahifa yoki saytni emas, balki ilovaning ma’lum ekranini ochadigan URL
  • Uch tur — Standard (faqat o‘rnatilgan ilova bilan), Deferred (o‘rnatishni kutish bilan), Contextual (UTM parametrlari bilan)
  • Custom URL Scheme (myapp://) — oddiy usul, lekin ilova yo‘q bo‘lganda fallback yo‘q
  • Universal Link va App Link — domen tekshiruvi va brauzer fallbacki bilan deep link evolyutsiyasi
  • iOS deep linkni AppDelegate/SceneDelegate orqali qayta ishlaydi, Android — Intent Filter orqali
  • Deferred Deep Link o‘rnatishdan oldin kontekstni saqlash uchun vositachi SDK (Branch, AppsFlyer) talab qiladi
  • Sinov barcha uch holat (cold, warm, active) — deep link sozlashning majburiy bosqichi

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing