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 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, ada bagian terpisah di atas menu notifikasi yang hanya berisi percakapan real-time dengan orang (seperti panggilan dan pesan chat, termasuk chat grup). Notifikasi di ruang ini terlihat dan bertindak berbeda dari notifikasi non-percakapan di banyak ponsel:

  • Desainnya berbeda, dengan penekanan kuat pada avatar yang mewakili orang-orang, dan dipadukan dengan aplikasi yang membawa percakapan.
  • Ketukan pada notifikasi akan membuka percakapan di aplikasi (atau balon, jika percakapan tersebut sebelumnya sudah disetel ke balon), dan ketukan pada tanda sisipan akan memperluas pesan baru dalam menu hingga ke panjang maksimumnya dengan daftar opsi yang lengkap.
  • 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.

Mulai Android 11, Balon dapat diawali dari notifikasi di bagian Percakapan. Hanya notifikasi dengan pintasan atribusi yang dapat muncul sebagai balon. Percakapan akan otomatis muncul sebagai balon jika ditandai sebagai penting atau dipicu muncul sebagai balon dalam menu notifikasi.

Pintasan Percakapan

Pintasan ke percakapan muncul pada peluncur dan bersamaan dengan pintasan berbagi berdurasi panjang dalam sharesheet sistem.

Pedoman API

Bagian ini menjelaskan API untuk menambahkan dukungan di aplikasi pada ruang yang disediakan sistem yang menunjukkan orang dan percakapan.

Pintasan untuk Percakapan

Untuk berpartisipasi dalam inisiatif yang berfokus pada percakapan ini, aplikasi harus menyediakan pintasan berdurasi panjang bagi sistem. Sebaiknya gunakan pintasan berbagi berdurasi panjang. Jika perlu, Anda dapat menggunakan pintasan dinamis di Android 11, tetapi kami dapat menghapus opsi ini di masa mendatang.

Untuk memublikasikan pintasan ke percakapan, panggil metode ShortcutManagerCompat setDynamicShortcuts(), addDynamicShortcuts(), atau pushDynamicShortcut() (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 LocusIdCompat untuk pintasan dan memberi anotasi aktivitas dalam aplikasi serta fragmen dengan LocusIdCompat 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 mengalami frustrasi.

Notifikasi Percakapan

Notifikasi akan dianggap sebagai notifikasi percakapan jika hal berikut berlaku:

  • Notifikasi menggunakan MessagingStyle.

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

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

Membantu memeringkatkan percakapan dalam aplikasi menggunakan LocusIdCompat

Kecerdasan 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 percakapan yang terjadi sepenuhnya dalam aplikasi, kecuali jika interaksi tersebut juga diberi tag. Jadi, kami sangat menyarankan agar Anda melampirkan LocusIdCompat ke pintasan dan membuat anotasi aktivitas dalam aplikasi atau fragmen dengan LocusIdCompat yang terkait. Menggunakan LocusIdCompat memungkinkan sistem saran untuk menentukan peringkat percakapan dengan benar. Jika Anda menggunakan setShortcutInfo() untuk mengatribusikan percakapan dengan pintasan, sistem percakapan akan otomatis melampirkan LocusIdCompat yang sesuai.

Persyaratan ruang percakapan untuk aplikasi yang menargetkan Android 10 atau yang lebih rendah

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 penggantian 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 secara inline

Jika notifikasi tidak memenuhi persyaratan ini, platform akan menggunakan opsi penggantian untuk memformat notifikasi. Jika notifikasi memenuhi persyaratan salah satu kasus penggantian, notifikasi akan ditampilkan di ruang percakapan dengan format khusus. Jika 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 lama dan notifikasi menggunakan MessagingStyle, tetapi tidak mengatribusikan 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 secara inline

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

Jika notifikasi tidak menggunakan MessagingStyle, tetapi aplikasinya 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 secara inline

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 menargetkan Android 11 atau yang lebih baru. Berikan AdaptiveIconDrawable untuk ikon pintasan, atau avatar pintasan Anda mungkin akan terpotong tidak sengaja; lihat Menyediakan citra pintasan untuk detail selengkapnya.

Pintasan akan diberi peringkat di platform sistem yang berbeda, termasuk sharesheet sistem jika itu adalah pintasan berbagi. Pelajari lebih lanjut cara mendapatkan peringkat terbaik dan membantu sistem mempromosikan pintasan Anda.

Menguji pintasan dan Notifikasi 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 mematuhi pedoman ruang percakapan, percakapan akan muncul otomatis di ruang percakapan. Anda dapat memverifikasi bahwa pintasan terintegrasi dengan benar dengan menekan lama notifikasi. Jika integrasi dilakukan dengan benar, UI akan menampilkan tindakan terkait percakapan. Jika notifikasi tidak ditautkan ke pintasan, UI akan menampilkan teks yang menyatakan 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 Anda membagikan konten yang dapat diterima oleh pintasan berbagi.