Kenapa Deep Link Aplikasi Android Lu Tiba-tiba Rusak di Android 12? Ini Solusi Cepatnya Tanpa Pusing

Kenapa Deep Link Aplikasi Android Lu Tiba-tiba Rusak di Android 12? Ini Solusi Cepatnya Tanpa Pusing

Oleh Reggi, 29 Dec 2022

Pernah nggak lu ngeklik link promo atau konten dari chat, tapi bukannya langsung direct ke dalam aplikasi, HP lu malah ngelempar URL itu ke browser bawaan? Atau lebih parah lagi: muncul dialog pop-up chooser yang bikin pengalaman user jadi serba ribet dan lambat?

Masalah klasik ini meledak semenjak Google ngerilis Android 12 (API level 31). Google memperketat aturan main: kalau domain website lu belum terverifikasi secara sah lewat Digital Asset Links, OS Android bakal secara sepihak nolak buat ngebuka aplikasi lu secara otomatis. Link lu bakal dianggap cuma link web biasa.

Kabar baiknya, lu nggak perlu pusing ngutak-ngatik baris konfigurasi XML secara manual dari nol. Android Studio udah nyediain senjata rahasia bernama App Links Assistant buat beresin semua keruwetan verifikasi ini dalam hitungan menit.


3 Syarat Mutlak Sebelum Mulai

Sebelum masuk ke antarmuka Android Studio, pastikan codebase lu udah siap tempur dengan tiga checklist dasar ini:

  1. Intent Filter Terpasang: Filter intent wajib terdaftar rapi di dalam file AndroidManifest.xml.
  2. Logic Handler Siap: Kode penanganan incoming link sudah tertanam di dalam file MainActivity (atau Activity tujuan).
  3. Konsep Domain Mapping: Lu paham website mana yang mau dihubungkan dengan aplikasi Android lu.

Kalau checklist di atas udah beres, buka project lu di Android Studio versi 2.3 ke atas.


Tahap 1: Memetakan URL via URL Mapping Editor

Langkah pertama adalah ngasih tau aplikasi bagian mana dari website lu yang harus nyambung ke Activity tertentu.

Buka menu utama di Android Studio, lalu navigasikan ke: Tools -> App Links Assistant

App Links Assistant Menu

Panel bantuan bakal kebuka di sisi samping. Klik tombol Open URL Mapping Editor, lalu tekan tombol Add (ikon plus) di bagian bawah daftar URL Mapping untuk nambahin konfigurasi baru.

URL Mapping Editor

Isi kolom konfigurasi dengan detail berikut:

  • Host: Masukkan URL domain website lu (contoh: www.recipe-app.com).
  • Path Pattern: Tentukan jalur URL memakai opsi path, pathPrefix, atau pathPattern. Misalnya lu bikin aplikasi resep masakan dan semua link artikel diawali dengan direktori /recipe, cukup pilih pathPrefix lalu isi /recipe. Artinya, setiap link seperti http://www.recipe-app.com/recipe/grilled-potato-salad bakal otomatis dipetakan ke target yang sama.
  • Activity: Pilih Activity target di dalam project Android lu yang bakal bertugas nampung data dari URL tersebut.
  • Klik OK.

Tahap 2: Bikin File Digital Asset Links & Verifikasi Domain

Tahap ini adalah validasi keamanan biar OS Android percaya kalau pemilik website dan pemilik file APK adalah entitas yang sama.

Balik lagi ke panel App Links Assistant, lalu klik menu langkah ke-3: Open Digital Asset Links File Generator.

Generator Step

Lu bakal ngeliat form konfigurasi verifikasi aset digital seperti di bawah ini:

Generator Form

Isi field sesuai kebutuhan environment build lu:

  • Site domain: Domain website tujuan.
  • Application ID: ID paket aplikasi lu (Package Name).
  • Smart Lock Integration (Opsional): Centang opsi Support sharing credentials between the app and the website kalau lu mau sistem login nge-share kredensial antara web dan aplikasi. Ini bakal otomatis nyisipin string delegate_permission/common.get_login_creds.
  • Signing Config / Keystore: Ini bagian krusial. Kalau lu cuma lagi ngetes di local machine, lu bisa pakai debug keystore. Tapi kalau target lu adalah build production untuk rilis ke user publik, arahkan ke konfigurasi signing release atau file keystore production lu.
  • Klik tombol Generate Digital Asset Links file.

Begitu filenya selesai di-generate, klik Save file buat nge-download file bernama assetlinks.json.

Sekarang, upload file tersebut ke server website lu di direktori publik:

text
https://<yoursite>/.well-known/assetlinks.json

Pastikan file JSON tersebut bisa diakses secara publik (public read access) lewat browser tanpa halangan autentikasi.

Setelah ter-upload, balik ke Android Studio dan klik tombol Link and Verify buat memastikan Android Studio bisa membaca file JSON dari server lu secara valid.


Tahap 3: Uji Coba Langsung (Testing App Links)

Semua konfigurasi udah beres, sekarang waktunya pembuktian apakah Deep Link lu beneran tembus tanpa nampilin dialog pop-up yang ganggu.

  1. Di panel App Links Assistant, klik opsi Test App Links.
  2. Masukkan URL sampel yang mau lu uji pada kolom URL (contoh: http://recipe-app.com/recipe/grilled-potato-salad).
  3. Klik tombol Run Test.

Apa yang bakal terjadi?

Hasil PengujianIndikasi Sistem
Berhasil (Success)Android Studio langsung nge-launch aplikasi di emulator/device fisik tepat di Activity tujuan tanpa ada dialog chooser aplikasi.
Gagal / ErrorPesan error bakal langsung muncul di bawah kolom URL atau pada jendela console panel Run Android Studio, nandain kalau mapping URL lu masih belum cocok.

Cukup dengan tiga tahap di atas, masalah broken deep link di Android 12 ke atas bisa lu beresin tanpa perlu nebak-nebak format JSON secara manual. Setup rapi, UX aplikasi lu langsung balik mulus lagi.


Sedang Ramai Dibaca