Membuat notifikasi Update Live

Sistem akan mempromosikan notifikasi Info Terbaru. 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 Langsung.

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 live:

  • Harus berupa Standard/No Style, BigTextStyle, CallStyle, atau ProgressStyle.
  • Harus meminta izin non-runtime berikut dalam 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 set contentTitle.
  • TIDAK boleh memiliki setelan customContentView (tidak ada RemoteViews).
  • TIDAK boleh menjadi ringkasan grup yang menggunakan setGroupSummary.
  • TIDAK boleh setColorized ke TRUE.
  • 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 Langsung 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 oleh pengguna, dan sensitif terhadap waktu.

Sedang berlangsung

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

Info Terbaru Langsung menampilkan aktivitas yang sedang berlangsung. Jangan gunakan Info Terbaru untuk menawarkan akses yang lebih cepat ke fungsi aplikasi. Jika Anda ingin melakukannya, gunakan widget aplikasi atau kartu Setelan Cepat kustom.

  • Penggunaan yang tepat: Navigasi aktif, panggilan telepon yang sedang berlangsung, pelacakan layanan transportasi online yang aktif, dan pelacakan pengiriman makanan yang aktif.
  • Penggunaan yang tidak pantas: Iklan, promosi, pesan chat, pemberitahuan, acara kalender mendatang, dan akses cepat ke fitur aplikasi.

Dimulai oleh pengguna

Sebagian besar Info Langsung harus merepresentasikan aktivitas yang dipicu secara eksplisit oleh pengguna, seperti memulai latihan fisik, memulai navigasi mengemudi, atau memanggil layanan transportasi online. Jangan menampilkan informasi sekitar, seperti informasi tentang lingkungan, minat, atau acara mendatang pengguna, dalam Info Terbaru Live. Jangan izinkan aktivitas yang dipicu oleh pihak lain untuk membuat Info Langsung.

Terkadang, pengguna dapat melakukan tindakan yang memulai aktivitas untuk beberapa waktu di masa mendatang. Misalnya, jika pengguna membeli tiket penerbangan atau konser, mendaftar ke turnamen, atau menunjukkan kehadiran mereka di masa mendatang ke acara yang sensitif terhadap waktu. Dalam kasus ini, sebaiknya tampilkan Pembaruan Langsung 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 acara latar belakang seperti pertandingan olahraga, Anda dapat mulai memposting Info Live untuk acara tersebut. Namun, Anda juga harus menyertakan tindakan Lepaskan di notifikasi terkait.

Mendesak

Tampilkan Pembaruan Langsung hanya jika memerlukan perhatian pengguna selama aktivitas. Kasus penggunaan utama untuk Info Langsung adalah pemantauan, saat pengguna mendapatkan manfaat signifikan dari melihat sekilas Info Langsung untuk mengawasi status aktivitas yang terus berubah.

Pembaruan Langsung sering kali sesuai untuk aktivitas yang bertransisi antara Pembaruan Langsung dan notifikasi normal. Misalnya, menampilkan notifikasi boarding pass beberapa jam sebelum penerbangan pengguna adalah hal yang tepat, tetapi notifikasi tersebut harus menjadi Info Langsung hanya saat pengguna sangat membutuhkannya, seperti saat mereka tiba di bandara atau tempat acara atau setelah boarding dimulai. Sebaliknya, Update Langsung tidak sesuai untuk melacak paket karena pengguna tidak perlu terus-menerus memantaunya.

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 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 "when" memicu hitung mundur untuk durasi notifikasi, kecuali jika notifikasi diabaikan atau diperbarui.

  • Waktu "kapan" setidaknya 2 menit di masa mendatang: jika waktu saat ini adalah 10.05 pagi dan waktu "kapan" ditetapkan ke 10.10 pagi, maka chip akan bertuliskan "5 mnt".
  • Jika waktu "kapan" lebih dari 1 menit yang lalu, notifikasi tidak akan ditampilkan.
  • Gunakan setShowWhen untuk 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 berdasarkan 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 teks sebanyak mungkin.

Penutupan

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

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

Lihat aplikasi contoh untuk bereksperimen dengan API ini.