Dengan Android 8.0 (API level 26) dan yang lebih tinggi, Anda dapat mengizinkan pengguna menyematkan widget ke layar utama dalam aplikasi Anda. Mempromosikan widget langsung dalam aplikasi adalah cara yang bagus untuk meningkatkan engagement pengguna, terutama setelah pengguna menyelesaikan tugas terkait, atau saat pengguna berulang kali mengakses fitur di aplikasi Anda.
Membuat Permintaan Pin
Untuk memulai penyematan widget, gunakan metode requestPinGlanceAppWidget
dari class GlanceAppWidgetManager. Untuk aplikasi yang berjalan di Android versi lebih rendah, fungsi ini akan menampilkan nilai salah (false). Namun, jika permintaan berhasil dikirim
ke sistem, metode ini akan menampilkan nilai benar (true).
Berikut adalah contoh cara membuat permintaan pin:
@Composable fun AnInAppComposable() { val context = LocalContext.current val coroutineScope = rememberCoroutineScope() Button( onClick = { coroutineScope.launch { GlanceAppWidgetManager(context).requestPinGlanceAppWidget( receiver = MyWidgetReceiver::class.java, preview = MyWidget(), previewState = DpSize(245.dp, 115.dp) ) } } ) {} }
Dalam contoh ini, MyWidgetReceiver adalah class yang menerima callback widget, dan MyWidget adalah widget Glance yang ingin Anda sematkan. successCallback adalah PendingIntent yang dipicu saat widget berhasil disematkan.
Menangani Respons Permintaan Pin
Saat pengguna merespons dialog permintaan penyematan, aplikasi Anda akan menerima
respons. Jika pengguna menyetujui permintaan, widget Anda akan disematkan ke
layar utama, dan successCallback PendingIntent akan dipicu. Jika pengguna menolak permintaan, tidak akan terjadi apa-apa.
Perlu diperhatikan bahwa successCallback hanya dipicu jika
widget berhasil ditambahkan ke layar utama. Callback ini tidak dipicu jika pengguna
menolak permintaan atau jika peluncur tidak mendukung penyematan.