Membuat notifikasi Update Live

Sistem mempromosikan notifikasi Info Terbaru Langsung. Notifikasi yang dipromosikan muncul lebih jelas di platform sistem, termasuk di bagian atas panel samping notifikasi dan layar kunci, serta sebagai chip di status bar.

Gambar 1. Contoh notifikasi Update Live.

Kartu notifikasi yang dipromosikan memiliki karakteristik tampilan berikut:

  • Diperluas secara default
  • Tidak dapat diciutkan

Notifikasi Anda harus memenuhi persyaratan berikut agar memenuhi syarat sebagai update langsung:

  • Harus berupa Standar/Tanpa Gaya, BigTextStyle, CallStyle, atau ProgressStyle.
  • Harus meminta izin non-runtime berikut di manifes Android android.permission.POST_PROMOTED_NOTIFICATIONS.
  • Harus meminta promosi menggunakan EXTRA_REQUEST_PROMOTED_ONGOING atau NotificationCompat.Builder#requestPromotedOngoing.
  • Harus berupa ongoing (tetapkan FLAG_ONGOING_EVENT).
  • Harus memiliki contentTitle yang ditetapkan.
  • TIDAK boleh menetapkan customContentView (tidak ada RemoteViews).
  • TIDAK boleh berupa ringkasan grup yang menggunakan setGroupSummary.
  • Saluran notifikasi TIDAK boleh memiliki IMPORTANCE_MIN.

Karakteristik promosi

API berikut membantu Anda menentukan apakah sistem akan mempromosikan notifikasi Anda:

  • Notification.FLAG_PROMOTED_ONGOING menunjukkan apakah notifikasi dipromosikan.
  • Notification.hasPromotableCharacteristics() memvalidasi apakah sistem dapat mempromosikan notifikasi. Metode ini tidak mempertimbangkan apakah pengguna menonaktifkan Update Live untuk aplikasi di setelan.
  • NotificationManager.canPostPromotedNotifications() memeriksa apakah aplikasi Anda dapat memposting notifikasi yang dipromosikan, misalnya, jika pengguna mengaktifkan atau menonaktifkannya di setelan.
  • Settings.ACTION_MANAGE_APP_PROMOTED_NOTIFICATIONS adalah tindakan intent yang memungkinkan aplikasi mengirim pengguna ke Setelan untuk mengaktifkan fitur ini.

Kriteria penggunaan

Gunakan Info Terbaru untuk aktivitas yang sedang berlangsung, dimulai pengguna, dan bersifat sensitif waktu.

Sedang berlangsung

Pembaruan Live harus merepresentasikan aktivitas yang sedang berlangsung secara aktif, dengan awal dan akhir yang berbeda. Jika aktivitas terjadi di masa lalu, jangan gunakan Update Live. Sebagai gantinya, gunakan notifikasi standar. Hal ini juga berlaku untuk acara yang belum dimulai, meskipun acara yang akan dimulai dapat menggunakan Update Live.

Info Terbaru Langsung mewakili aktivitas yang sedang berlangsung. Jangan gunakan Update Live untuk menawarkan akses yang dipercepat ke fungsi aplikasi. Jika Anda ingin melakukannya, gunakan widget aplikasi atau kartu Setelan Cepat kustom.

  • Penggunaan yang sesuai: Navigasi aktif, panggilan telepon yang sedang berlangsung, pelacakan rideshare aktif, dan pelacakan pesan-antar makanan aktif.
  • Penggunaan yang tidak pantas: Iklan, promosi, pesan chat, pemberitahuan, peristiwa kalender mendatang, dan akses cepat ke fitur aplikasi.

Dimulai oleh pengguna

Sebagian besar Update Live harus merepresentasikan aktivitas yang dipicu secara eksplisit oleh pengguna, seperti memulai olahraga, memulai navigasi mengemudi, atau memanggil transportasi online. Jangan tampilkan informasi standby, seperti informasi tentang lingkungan, minat, atau acara mendatang pengguna, dalam Info Terbaru Live. Jangan izinkan aktivitas yang dipicu oleh pihak lain untuk menghasilkan Update Live.

Terkadang, pengguna mungkin melakukan tindakan yang memulai aktivitas selama beberapa waktu di masa mendatang. Misalnya, jika pengguna membeli tiket untuk penerbangan atau konser, mendaftar ke turnamen, atau menunjukkan kehadirannya di masa mendatang ke acara yang sensitif terhadap waktu. Dalam hal ini, sebaiknya tampilkan Pembaruan Live secara otomatis saat acara terjadwal dimulai. Namun, aplikasi harus menyesuaikan pemicunya agar hanya muncul saat aktivitas akan segera dimulai. Jika pengguna secara eksplisit menunjukkan bahwa mereka ingin mulai memantau peristiwa latar belakang seperti pertandingan olahraga, Anda dapat mulai memposting Info Terbaru untuk peristiwa tersebut. Namun, Anda juga harus menyertakan tindakan Lepaskan Pin dalam notifikasi terkait.

Mendesak

Tampilkan Update Langsung hanya jika memerlukan perhatian pengguna selama aktivitas. Kasus penggunaan utama untuk Update Live adalah pemantauan, saat pengguna mendapatkan manfaat yang signifikan dari melihat sekilas Update Live untuk memantau status aktivitas yang berkembang.

Update Live sering kali sesuai untuk aktivitas yang bertransisi antara Update Live dan notifikasi normal. Misalnya, menampilkan notifikasi kartu boarding sesuai beberapa jam sebelum penerbangan pengguna, tetapi notifikasi tersebut hanya boleh menjadi Update Live jika pengguna memiliki kebutuhan mendesak, seperti saat mereka tiba di bandara atau tempat atau setelah boarding dimulai. Sebaliknya, Update Live tidak sesuai untuk melacak paket karena pengguna tidak perlu memantaunya secara terus-menerus.

Chip Status

Chip status memungkinkan pengguna melacak Info Terbaru Langsung saat notifikasi tidak terlihat. Gunakan setShortCriticalText atau setWhen untuk menyampaikan informasi status penting terkait notifikasi yang berfokus pada progres Anda.

chip status dengan ikon
Gambar 2. Status tidak ditentukan menampilkan ikon kecil, Notification.Builder#setSmallIcon.
chip status dengan waktu
Gambar 3. Gunakan Notification.Builder#setShortCriticalText untuk menampilkan waktu absolut.
chip status dengan info
Gambar 4. Gunakan Notification.Builder#setShortCriticalText untuk menyampaikan informasi penting.

Saat waktu

Waktu kapan akan memicu hitung mundur untuk durasi notifikasi, kecuali notifikasi ditutup atau diperbarui.

  • Waktu kapan setidaknya 2 menit ke depan: jika waktu saat ini adalah 10.05 dan waktu kapan ditetapkan ke 10.10, chip akan menampilkan "5min".
  • Jika waktunya lebih dari 1 menit yang lalu, notifikasi tidak akan ditampilkan.
  • Gunakan setShowWhen ke FALSE jika Anda tidak ingin notifikasi yang ditampilkan di menu notifikasi memiliki waktu.

Tampilan chip status

Chip status selalu menyertakan ikon, dan secara opsional menyertakan teks. Chip memiliki lebar maksimum 96 dp. Tampilkan teks bergantung pada kriteria berikut:

  • Jika kurang dari 7 karakter, tampilkan seluruh teks.
  • Jika kurang dari setengah teks akan ditampilkan, hanya tampilkan ikon.
  • Jika lebih dari setengah teks akan ditampilkan, tampilkan sebanyak mungkin teks.

Penutupan

Pengguna dapat mengontrol visibilitas notifikasi di panel notifikasi. Memposting Info Terbaru Langsung yang tidak diinginkan dapat menyebabkan pengguna mencabut izin postingan aplikasi.

Untuk mencegah pengguna menonaktifkan Info Terbaru Langsung sepenuhnya, hindari memposting update yang mungkin ditutup pengguna. Jangan memposting ulang Info Terbaru Langsung yang ditutup pengguna. Gunakan setDeleteIntent untuk mendeteksi update yang ditutup.