Orang dan percakapan

Inisiatif orang dan percakapan adalah inisiatif multitahun Android yang bertujuan untuk mengutamakan orang dan percakapan dalam permukaan sistem ponsel. Prioritas ini didasarkan pada fakta bahwa komunikasi dan interaksi dengan orang lain masih menjadi area fungsional yang paling bernilai dan penting bagi sebagian besar pengguna kami di seluruh demografi.

Sejumlah fitur baru diperkenalkan di Android 11 untuk mendukung inisiatif orang dan percakapan.

Ruang percakapan


Ruang percakapan adalah area notifikasi khusus untuk percakapan
       real-time antar-manusia.
Gambar 1: Ruang percakapan.

Pada banyak ponsel, akan ada bagian terpisah di atas menu notifikasi yang hanya berisi percakapan real-time dengan orang (seperti pesan chat, termasuk percakapan grup, dan panggilan). Notifikasi di ruang ini terlihat dan bertindak berbeda dari notifikasi biasa di banyak ponsel:

  • Desainnya berbeda, dengan penekanan kuat pada avatar yang mewakili orang-orang, dan dipadukan dengan aplikasi yang membawa percakapan.
  • Seperti pada Android 10, ketukan pada notifikasi akan membuka percakapan di aplikasi (atau balon, jika percakapan itu sebelumnya sudah disetel ke balon), dan ketukan pada kursor teks akan meluaskan pesan baru dalam menu menjadi penuh dengan opsi yang sama seperti sebelumnya.
  • Tindakan khusus percakapan ditawarkan (beberapa dengan menekan lama):
    • Tandai percakapan ini sebagai prioritas
    • Promosikan percakapan ini ke balon (hanya ditampilkan jika aplikasi mendukung balon)
    • Matikan notifikasi untuk percakapan ini
    • Setel suara atau getaran khusus untuk percakapan ini

Percakapan dalam Balon

Jika notifikasi memenuhi persyaratan percakapan, platform
       akan meluncurkannya sebagai balon dari panel samping notifikasi.
Gambar 2: Notifikasi diluncurkan sebagai balon dari panel samping notifikasi.

Di Android 11, Balon dapat dimulai dari notifikasi di bagian Percakapan. Hanya notifikasi dengan pintasan terkait yang dapat muncul sebagai balon. Percakapan yang ditandai sebagai penting atau dipicu untuk muncul sebagai balon dalam menu notifikasi akan muncul secara otomatis sebagai balon.

Pintasan Percakapan

Pintasan ke percakapan muncul pada peluncur dan muncul bersama pintasan berbagi yang berdurasi panjang dalam sharesheet sistem.

Pedoman API

Bagian ini menjelaskan tentang cara API memanfaatkan ruang untuk orang dan percakapan di aplikasi Anda.

Pintasan untuk Percakapan

Untuk berpartisipasi dalam inisiatif baru yang berfokus pada percakapan ini, aplikasi harus menyediakan pintasan yang berdurasi panjang bagi sistem. Untuk saat ini, Anda dapat menggunakan pintasan dinamis yang berdurasi panjang untuk memunculkan notifikasi ke ruang percakapan, namun sebaiknya gunakan pintasan berbagi yang berdurasi panjang; di masa mendatang, kami akan mewajibkan penggunaan pintasan berbagi.

Untuk memublikasikan pintasan ke percakapan, panggil metode ShortcutManager setDynamicShortcuts(), addDynamicShortcuts(), atau pushDynamicShortcut() yang ada (yang secara otomatis mengelola batas pintasan untuk developer). Pintasan ini harus berdurasi panjang dan memiliki data Person yang dilampirkan untuk satu atau beberapa orang, dan mengidentifikasi peserta lain dalam percakapan tersebut. Sebaiknya Anda juga menetapkan LocusId untuk pintasan dan memberi anotasi aktivitas dalam aplikasi serta fragmen dengan LocusId tersebut. Dengan melakukannya, sistem dapat secara akurat memberi peringkat pada percakapan berdasarkan penggunaan aplikasi.

Jika percakapan sudah tidak ada, aplikasi dapat menghapus pintasan dengan removeLongLivedShortcuts(); tindakan ini akan menyebabkan sistem menghapus semua data yang terkait dengan percakapan. Meskipun pintasan dapat dihapus, aplikasi tidak boleh menghapus pintasan yang di-cache kecuali benar-benar diperlukan; pintasan mungkin di-cache karena pengguna berinteraksi dengan pintasan tersebut untuk mengubah pengalaman mereka, dan menghapus pintasan akan mengurungkan perubahan tersebut, menyebabkan pengguna merasa frustrasi.

Notifikasi Percakapan

Notifikasi akan dianggap sebagai notifikasi percakapan jika hal berikut berlaku:

  • Notifikasi menggunakan MessagingStyle.

  • (Hanya jika aplikasi menargetkan Android 11) Notifikasi dikaitkan dengan pintasan berbagi yang valid, berdurasi panjang, dinamis, atau di-cache. Notifikasi dapat menyetel pengaitan ini dengan memanggil setShortcutId() atau setShortcutInfo(). Jika aplikasi menargetkan Android 10 atau yang lebih rendah, notifikasi tidak harus dikaitkan dengan pintasan, seperti yang dibahas di bagian opsi penggantian.

  • Pengguna belum mendemosikan percakapan dari bagian percakapan melalui setelan saluran notifikasi, pada saat memposting.

Percakapan dalam aplikasi dan LocusId

Intelegensi pada perangkat menentukan percakapan yang kemungkinan besar diminati pengguna. Di antara sinyal yang paling penting adalah keterkinian dan frekuensi sesi percakapan dalam setiap percakapan. Sistem mengetahui hal-hal tentang interaksi dengan sebuah percakapan dari pintasan Peluncur atau dalam notifikasi jika diberi tag dengan benar. Namun, sistem tidak mengetahui tentang percakapan yang terjadi sepenuhnya di dalam aplikasi, kecuali interaksi tersebut juga diberi tag. Jadi, kami sangat menyarankan agar Anda melampirkan LocusId ke pintasan dan membuat anotasi aktivitas aplikasi atau fragmen dengan LocusId yang terkait. Menggunakan LocusId memungkinkan sistem saran untuk menentukan peringkat percakapan dengan benar. Jika Anda menggunakan setShortcutInfo() untuk mengaitkan percakapan dengan pintasan, sistem percakapan akan secara otomatis melampirkan LocusId yang sesuai.

Persyaratan ruang percakapan untuk aplikasi yang tidak menargetkan Android 11

Jika aplikasi tidak menargetkan Android 11, pesannya masih dapat muncul di ruang percakapan. Namun, aplikasi tetap harus memenuhi persyaratan tertentu. Bagian ini menjelaskan persyaratan untuk aplikasi tersebut, dan perilaku pengganti jika aplikasi tidak memenuhi persyaratan.

Persyaratan utama untuk berpartisipasi dalam ruang pesan adalah, aplikasi harus menerapkan notifikasi MessagingStyle, dan notifikasi harus merujuk pada pintasan berdurasi panjang dari notifikasi yang dipublikasikan pada saat notifikasi itu diposting. Notifikasi yang memenuhi persyaratan ini akan muncul di ruang percakapan dengan perilaku ini:

  • Notifikasi ditampilkan dalam gaya percakapan
  • Tombol Balon ditawarkan, jika diterapkan
  • Fungsi khusus percakapan ditawarkan sebagai bagian dari notifikasi

Jika notifikasi tidak memenuhi persyaratan ini, platform akan menggunakan opsi pengganti untuk memformat notifikasi. Jika notifikasi memenuhi persyaratan salah satu kasus penggantian, notifikasi akan ditampilkan di ruang percakapan dengan format khusus. Jika notifikasi tidak memenuhi syarat untuk salah satu opsi penggantian, notifikasi tidak akan ditampilkan di ruang percakapan.

Penggantian: Jika MessagingStyle digunakan tetapi tidak ada pintasan yang disediakan

Jika aplikasi menargetkan Android 10 atau yang lebih rendah dan notifikasi menggunakan MessagingStyle tetapi tidak mengaitkan pesan dengan pintasan, notifikasi akan ditampilkan di ruang percakapan dengan perilaku ini:

  • Notifikasi ditampilkan dalam gaya percakapan
  • Tidak ada tombol Balon yang ditawarkan
  • Tidak ada fungsi khusus Percakapan yang ditawarkan sebagai bagian dari notifikasi

Penggantian: Jika MessagingStyle tidak digunakan, tetapi aplikasi tersebut adalah aplikasi pesan yang dikenali

Jika notifikasi tidak menggunakan MessagingStyle tetapi aplikasi itu dikenali oleh platform sebagai aplikasi pesan, dan parameter category notifikasi disetel ke msg, notifikasi ditampilkan di ruang percakapan dengan perilaku ini:

  • Notifikasi ditampilkan dalam gaya pra-Android 11 yang lama
  • Tidak ada tombol balon yang ditawarkan
  • Tidak ada fungsi khusus percakapan yang ditawarkan sebagai bagian dari notifikasi

Panduan, penggunaan, dan pengujian

Bagian ini memberikan panduan umum tentang cara menggunakan dan menguji fitur percakapan.

Kapan saya harus menggunakan percakapan?

Notifikasi Percakapan dan pintasan terkait ditujukan untuk meningkatkan pengalaman pengguna percakapan real-time. Misalnya SMS, chat teks, dan panggilan telepon adalah percakapan real-time yang memungkinkan pengguna berkomunikasi dengan cepat. Pengguna tidak dapat melakukannya dengan email dan aktivitas yang tidak terkait dengan percakapan.

Kami telah memberi pengguna kemampuan untuk menghapus percakapan tertentu dari bagian percakapan jika mereka merasa percakapan tersebut tidak berada di ruang yang tepat.

Menyediakan pintasan yang bagus

Agar dapat ditampilkan di ruang percakapan, Anda harus menyediakan pintasan jika aplikasi Anda menargetkan Android 11. Berikan AdaptiveIconDrawable untuk ikon pintasan atau avatar pintasan Anda mungkin akan terpotong secara tidak sengaja; lihat Menyediakan citra pintasan untuk detail selengkapnya.

Pintasan Anda akan diberi peringkat di permukaan sistem yang berbeda, termasuk sharesheet sistem jika itu adalah pintasan berbagi. Lihat Mendapatkan peringkat terbaik untuk detail tentang cara memastikan sistem mempromosikan pintasan Anda.

Menguji Notifikasi dan pintasan Percakapan

Menekan lama pada percakapan akan membuka menu
  tindakan yang terkait dengan percakapan.
Gambar 3: Anda dapat memverifikasi bahwa notifikasi percakapan dikonfigurasi dengan benar dengan menekan lama pada tombol tersebut dan memeriksa apakah menu percakapan muncul.

Jika Anda mengikuti pedoman ruang percakapan, percakapan akan muncul secara otomatis di ruang percakapan. Menekan lama pada notifikasi memverifikasi bahwa pintasan terintegrasi dengan benar dengan notifikasi. Jika integrasi dilakukan dengan benar, UI akan menampilkan tindakan terkait percakapan; jika notifikasi tidak ditautkan ke pintasan, UI akan menampilkan teks yang menyatakan bahwa aplikasi tidak mendukung fitur percakapan.

Pintasan yang ditambahkan akan ditampilkan dengan menekan lama pada peluncur aplikasi. Pastikan untuk menguji apakah pintasan membawa Anda ke tempat yang benar dalam aplikasi Anda.

Pintasan berbagi yang ditambahkan akan ditampilkan dalam baris berbagi langsung di Sharesheet sistem saat berbagi konten yang dapat diterima oleh pintasan berbagi.