Halaman ini menjelaskan cara app store pihak ketiga yang terdaftar dalam program Akses Katalog dapat mengintegrasikan penginstalan inline Google Play, sebuah fitur yang memungkinkan app store Android pihak ketiga di Amerika Serikat mengarahkan pengguna untuk mendownload aplikasi Play melalui Google Play dengan persyaratan yang sama seperti saat mendownload aplikasi langsung melalui Google Play Store.
Prasyarat
Sebelum mengintegrasikan API penginstalan inline di app store pihak ketiga, Anda harus menyelesaikan penyiapan berikut di Konsol Google Play:
- Mendaftar ke Program Akses Katalog Google Play: Ikuti petunjuk pendaftaran.
- Mengaktifkan Akses Katalog: Daftar ke program Akses Katalog melalui setelan Konsol Play.
- Mengambil token pengiriman: Proses ekspor Katalog Aplikasi Play yang diberikan kepada Anda. Ekspor ini berisi
catalog_token(token pengiriman) yang diperlukan untuk setiap aplikasi yang memenuhi syarat untuk Anda distribusikan.
Persyaratan
Agar antarmuka setengah layar berhasil ditampilkan kepada pengguna, persyaratan berikut harus dipenuhi:
- Pengguna harus berada di Amerika Serikat.
- Versi minimum Google Play di perangkat harus 52.3.
- Level Android API harus 24 atau yang lebih tinggi.
- Anda harus memberikan
catalog_tokenyang valid dan belum habis masa berlakunya untuk mengakses Google Play Store.
Memanggil penginstalan inline dari app store Anda
Untuk memanggil setengah layar penginstalan inline, buat instance class
Intent yang menargetkan URL deep link Google Play
dan menyertakan catalog_token unik Anda.
Gunakan kode contoh berikut (Kotlin atau Java) sebagai panduan:
Kotlin
val intent = Intent(Intent.ACTION_VIEW) val referrer = "<Your referrer string>" val id = "<Package name of the app to be installed>" val callerId = "<Package name of your third-party app store>" // Retrieve the app-specific token from your processed catalog export val catalogToken = getVerificationTokenByDocId(id) intent.setPackage("com.android.vending") val deepLinkUrl = "https://play.google.com/d?id=$id&referrer=$referrer" intent.data = Uri.parse(deepLinkUrl) // Set the required intent extras intent.putExtra("overlay", true) intent.putExtra("callerId", callerId) intent.putExtra("catalog_token", catalogToken) val packageManager = context.getPackageManager() if (intent.resolveActivity(packageManager) != null) { startActivityForResult(intent, 0) // Call with a request code to receive ActivityResults }
Java
Intent intent = new Intent(Intent.ACTION_VIEW); String referrer = "<Your referrer string>"; String id = "<Package name of the app to be installed>"; String callerId = "<Package name of your third-party app store>"; // Retrieve the app-specific token from your processed catalog export byte[] catalogToken = getVerificationTokenByDocId(id); intent.setPackage("com.android.vending"); String deepLinkUrl = "https://play.google.com/d?id=" + id + "&referrer=" + referrer; intent.setData(Uri.parse(deepLinkUrl)); // Set the required intent extras intent.putExtra("overlay", true); intent.putExtra("callerId", callerId); intent.putExtra("catalog_token", catalogToken); PackageManager packageManager = context.getPackageManager(); if (intent.resolveActivity(packageManager) != null) { startActivityForResult(intent, 0); // Call with a request code to receive ActivityResults }
Parameter API penginstalan inline
Parameter berikut harus diteruskan di URL Intent Anda atau sebagai Intent Extra untuk mengotorisasi penginstalan inline:
| Kolom | Lokasi | Deskripsi | Wajib |
|---|---|---|---|
id |
Kueri URL | Nama paket aplikasi target yang akan diinstal. | Ya |
referrer |
Kueri URL | String pelacakan perujuk opsional. | Tidak |
overlay |
Intent Extra | Tetapkan ke true untuk meminta antarmuka setengah layar inline. |
Ya |
callerId |
Intent Extra | Nama paket app store pihak ketiga yang disetujui. | Ya |
catalog_token |
Intent Extra | Token pengiriman unik yang disediakan dalam ekspor Akses Katalog Anda. Catatan: Token divalidasi untuk kesegaran, kecocokan paket target, dan kecocokan paket pemanggil. | Ya |
(Opsional) Penginstalan Inline Google Play dengan overlay status penginstalan
Untuk menampilkan overlay status penginstalan dengan alur penginstalan inline, Anda harus mengintegrasikan Penginstalan Inline Google Play dengan fitur Persistent Affordance menggunakan Google Play HSDP SDK.
Agar alur penginstalan inline dengan persistent affordance muncul:
- Versi minimum Google Play Store perangkat target harus 52.5 atau yang lebih tinggi.
- Level Android API harus 24 (Android M) atau yang lebih tinggi.
- Integrasikan dengan HSDP SDK versi 2.0.2 (segera hadir) atau yang lebih tinggi.
Contoh integrasi
// Step 1: Initialize HSDP Service // Note: Calling create(activity) automatically configures useServiceBasedHsdp = false // (Activity Path) under the hood without requiring manual boolean flags. val hsdpService = HsdpDeepLinkServiceFactory.create(activity) // Step 2: Construct Extra Query Parameters with Catalog Token val extraQueryParams = mapOf("catalog_token" to "YOUR_SECURE_CATALOG_TOKEN_VALUE") // Step 3: Trigger Inline Install Flow hsdpService.open( targetAppPackageName = "com.example.targetapp", referrer = "3pas_ad_campaign_123", listener = object : HsdpDeepLinkServiceListener { override fun onDeepLinkStarted() { // Inline details dialog started successfully } override fun onAffordanceStarted() { // HPOA persistent affordance UI attached } override fun onAffordanceEnded() { // Affordance UI detached } override fun onError(errorMessage: String) { // Handle error or fallback } }, extraQueryParams = extraQueryParams )
Contoh menghentikan pelacakan affordance
Memungkinkan aplikasi pemanggil menghentikan pelacakan status penginstalan secara manual dan menutup overlay HPOA. Catatan: Tindakan ini tidak akan menutup sheet penginstalan HSDP itu sendiri, hanya affordance.
// Stop tracking the installation state and dismiss the affordance overlay hsdpService.stopAffordance( targetAppPackageName = "com.example.targetapp", listener = object : HsdpDeepLinkService.AffordanceListener { override fun onAffordanceStopped() { // Affordance overlay stopped successfully } } )
Status &UX Affordance
Penginstalan Inline Google Play dengan fitur Persistent Affordance memiliki dua status visual:
- Status Menginstal: Menampilkan thumbnail aplikasi target dan pemutar progres penginstalan. Mengklik thumbnail akan meluncurkan kembali sheet penginstalan HSDP.
- Status Pasca-Penginstalan: Menampilkan ikon aplikasi target dengan tindakan "Buka". Mengklik thumbnail akan membuka aplikasi yang baru diinstal.
| Menginstal | Pasca-penginstalan |
|---|---|
![]() ![]() |
![]() |


