Dokumen ini memetakan perkembangan optimal aplikasi pesan dari kemungkinan titik awal hingga menjadi yang terbaik di kelasnya. Panduan ini dirancang untuk membantu Anda memikirkan cara menskalakan aplikasi dari waktu ke waktu, dan fitur apa yang harus diterapkan. Meskipun setiap aplikasi media berbeda, pertimbangkan rekomendasi berikut untuk mendapatkan aplikasi terbaik di kelasnya.
Aplikasi pesan dasar
Aplikasi pesan dasar memberi pengguna pengalaman komunikasi berbasis teks yang mendasar, yang dapat mencakup:
Dukungan pesan offline
Pastikan pesan dapat dimasukkan dalam antrean saat offline, dengan strategi untuk penyimpanan dalam cache lokal dan upaya percobaan ulang. Petunjuk UI seperti indikator 'mengirim…' atau 'gagal mengirim' membantu mengelola ekspektasi pengguna.Penanganan error
Berikan masukan yang jelas dan informatif untuk berbagai skenario kegagalan, seperti masalah jaringan atau penerima yang diblokir. Sertakan langkah-langkah atau penjelasan yang dapat ditindaklanjuti untuk mengurangi frustrasi pengguna.Notifikasi
Memberikan notifikasi saat pesan diterima di latar belakang.Firebase Cloud Messaging (FCM)
Manfaatkan Firebase Cloud Messaging untuk memberi tahu aplikasi tentang pesan baru.Pemeriksaan ejaan
Terapkan dan akses pemeriksaan ejaan di aplikasi Anda.Aksesibilitas
Ikuti panduan Desain Material untuk mendesain dan mengembangkan aplikasi Anda agar mudah diakses.Berbagi
Aplikasi pesan yang lebih baik
Aplikasi pesan yang lebih baik memberi pengguna lebih banyak alat untuk meningkatkan komunikasi dan mengekspresikan diri, termasuk:
Emoji
Mendukung emoji modern.Pemberitahuan push dengan Intent
Gunakan payload dengan Firebase Cloud Messaging (FCM) untuk mengarahkan pengguna ke percakapan atau bagian aplikasi tertentu dari notifikasi. Hal ini mengurangi langkah-langkah yang harus dilakukan pengguna untuk mengakses konten penting. ()Percakapan berangkai
Menerapkan balasan ke pesan tertentu dalam chat grup untuk mempertahankan konteks dan alur percakapan. Fitur ini sangat penting untuk menjaga komunikasi grup tetap teratur dan mudah dipahami.Keyboard gambar, tarik lalu lepas, dan konten multimedia lainnya
Menerima konten multimedia seperti gambar, video, dan file audio. API ini mencakup dukungan untuk keyboard gambar dan menjadi target tarik lalu lepas untuk memudahkan pengguna menambahkan stiker, animasi, dan media lainnya ke pesan mereka. Selain itu, pastikan aplikasi Anda berfungsi sebagai sumber tarik lalu lepas untuk membagikan konten ke aplikasi lain.Penelusuran dalam percakapan
Aktifkan penelusuran teks lengkap dalam percakapan sehingga pengguna dapat menemukan pesan, gambar, link, dan file dengan cepat. Mendukung pemfilteran menurut tanggal, orang, atau jenis konten untuk penelusuran yang efisien.Dukungan media dan file
Mengintegrasikan dukungan lancar untuk mengirim dan menerima gambar, video, dokumen, dan file lainnya dengan pratinjau inline dan indikator yang jelas untuk status download dan upload.Notifikasi
- Tunggu untuk menampilkan izin notifikasi hingga pengguna terbiasa dengan aplikasi Anda. Picu izin dari tindakan pengguna jika memungkinkan.
- Mendukung badge notifikasi.
- Mendukung balasan langsung di notifikasi.
- Gunakan saluran notifikasi dengan bijak, yang berpotensi mencakup tingkat kepentingan dan perilaku notifikasi kustom untuk saluran notifikasi.
- Mendukung notifikasi percakapan dengan pintasan yang aktif dalam waktu lama sehingga pengguna dapat menambahkan pintasan orang dan grup ke layar utama mereka.
Firebase Cloud Messaging (FCM) Tingkat Lanjut
Manfaatkan fitur Firebase Cloud Messaging tingkat lanjut seperti payload data untuk meminimalkan latensi dan perjalanan pulang pergi server yang mahal.Tanda dibaca
Memberikan opsi kepada pengguna untuk mengelola visibilitas tanda dibaca. Hal ini dapat berupa tombol sederhana di setelan, yang memungkinkan pengguna memilih privasi daripada pengakuan.
Aplikasi pesan terbaik
Aplikasi pesan terbaik dibuat berdasarkan rekomendasi sebelumnya untuk menciptakan pengalaman multiperangkat yang lancar bagi pengguna, beserta kemampuan ekspresif yang lebih canggih, termasuk:
Pemilih emoji
Mendukung pemilih emoji.Login yang disederhanakan
Berinvestasilah dalam identitas yang lancar di seluruh platform menggunakan CredentialManager dengan Kunci sandi atau login gabungan.Enkripsi end-to-end
Menerapkan protokol enkripsi standar industri untuk memastikan pesan aman dan hanya dapat dibaca oleh penerima yang dituju.Menambahkan dan mengedit konten multimedia
Menambahkan dan mengedit konten multimedia ke pratinjau teks saat membagikan.Sinkronisasi di seluruh perangkat
Memungkinkan pengguna mengakses percakapan mereka secara kohesif di beberapa perangkat, sehingga pengalaman komunikasi mereka lancar, baik saat mereka menggunakan ponsel, tablet, atau komputer.Lihat codelab untuk membuat aplikasi chat dengan Firebase Realtime Database.
Reaksi pesan
Memungkinkan pengguna bereaksi terhadap pesan dengan emoji atau grafik kustom, sehingga memberikan cara yang cepat dan menyenangkan untuk merespons tanpa mengetik pesan.Pengeditan dan penghapusan pesan
Memberi pengguna kontrol atas pesan mereka setelah dikirim, termasuk pengeditan dan penghapusan dalam jangka waktu tertentu.Notifikasi yang dapat disesuaikan
Menawarkan opsi penyesuaian mendetail untuk notifikasi, termasuk suara, pola getaran, dan warna LED, berdasarkan per-percakapan atau per-kontak. Lihat Membuat tata letak notifikasi kustom.Balon percakapan
Mendukung balon untuk percakapan.Target berbagi langsung
Berikan target berbagi langsung untuk memungkinkan pengguna Anda berbagi langsung dengan kontak di dalam aplikasi Anda.Menganimasikan keyboard virtual
Mengontrol dan menganimasikan keyboard virtual untuk sentuhan akhir.Chat suara dan video
Menyertakan kemampuan komunikasi suara dan video real-time berkualitas tinggi. Jetpack Telecom Library mencakup fitur bermanfaat seperti dukungan layanan latar depan khusus, perutean audio, dan kemampuan lintas perangkat antara ponsel, smartwatch, mobil, dan lainnya, sementara teknologi seperti WebRTC dapat menyediakan konektivitas peer-to-peer.Aplikasi Wear OS
Buat aplikasi Wear OS untuk membantu pengguna tetap terhubung dari smartwatch mereka.