Menjelajahi Android Q: Menambahkan pemberitahuan gelembung ke aplikasi Anda

Pengarang: Louise Ward
Tanggal Pembuatan: 8 Februari 2021
Tanggal Pembaruan: 18 Boleh 2024
Anonim
Learn Colors With Street Vehicles | Color Song | Cartoon Cars by Kids Channel
Video: Learn Colors With Street Vehicles | Color Song | Cartoon Cars by Kids Channel

Isi


Pada tahun 2018, Google menambahkan fitur "kepala obrolan" baru ke aplikasi iPhone-nya, yang menampilkan avatar penelepon sebagai notifikasi gaya gelembung mengambang. Ketika mengetuk, gelembung ini melebar untuk mengungkap strip kontrol yang memungkinkan pengguna untuk melakukan tugas langsung dari notifikasi, termasuk menempatkan penelepon di telepon pengeras suara dan menutup telepon.

Di Android Q, Google membuat pemberitahuan "obrolan kepala" sebagai bagian resmi dari platform Android, dengan diperkenalkannya Bubble API. Gelembung ini dapat berisi informasi bermanfaat tentang peristiwa yang terjadi di tempat lain di aplikasi Anda, tetapi gelembung itu juga dapat berisi tindakan khusus. Tindakan ini memungkinkan pengguna untuk berinteraksi dengan aplikasi Anda, bahkan ketika mereka melihat aktivitas, aplikasi lain, atau mereka berada di bagian yang tidak terkait dari sistem operasi Android.

Dalam artikel ini, saya akan membagikan semua yang perlu Anda ketahui tentang fitur Android Q yang akan datang ini, termasuk gelembung apa yang ditawarkan pengembang dan pengguna akhir, praktik terbaik, dan beberapa batasan yang perlu Anda ketahui, sebelum Anda mulai menggunakan gelembung di aplikasi Android Anda sendiri.


Di akhir artikel ini, Anda akan dapat mempercepat dengan fitur Android Q baru ini, dan akan membuat aplikasi Android yang menampilkan notifikasi gelembungnya sendiri.

Apa itu gelembung Android Q?

Gelembung menampilkan konten aplikasi Anda di jendela yang tampaknya "mengambang" di atas Aktivitas latar depan yang ada.

Dalam keadaan runtuh, pemberitahuan gelembung diwakili oleh ikon kecil. Ikon ini putih polos secara default, tetapi Anda dapat menyesuaikannya dengan gambar, misalnya Anda mungkin menggunakan ikon aplikasi Anda, atau avatar orang yang terkait dengan notifikasi ini.

Saat pengguna mengetuk gelembung yang diciutkan, niat akan dipanggil dan gelembung Anda akan ditampilkan dalam status diperluas, yang biasanya berisi informasi tambahan dan juga dapat menyediakan akses ke beberapa fungsi terkait.


Saat gelembung diperluas, aplikasi yang terkait menjadi proses latar depan, jika belum.

Pengguna dapat berinteraksi dengan gelembung tanpa harus bernavigasi dari Aktivitas mereka saat ini, yang menjadikan gelembung cara yang ampuh untuk melibatkan kembali pengguna, dan berpotensi menarik mereka kembali ke aplikasi Anda.

Bahkan jika pengguna sudah ada di dalam aplikasi Anda, sebuah gelembung dapat membantu mereka dengan cepat dan mudah menanggapi peristiwa penting yang terjadi di tempat lain dalam aplikasi Anda. Misalnya, bayangkan Anda telah mengembangkan aplikasi perpesanan, dan pengguna menerima dari Kontak B, saat mereka tengah menyusun sebuah untuk Menghubungi A. Daripada memaksa mereka untuk menavigasi ke Aktivitas tempat acara ini terjadi, Anda dapat menyajikan Hubungi B sebagai pemberitahuan gelembung, dan pengguna kemudian dapat membaca dan meresponsnya tanpa harus menavigasi menjauh dari konsep mereka.

Kecuali jika pengguna secara eksplisit menolak gelembung dengan menyeretnya ke layar, gelembung itu akan tetap terlihat meskipun pengguna menavigasi antara berbagai aplikasi dan area sistem operasi yang berbeda. Karena gelembung adalah bagian terus-menerus dari antarmuka pengguna Android (UI), mereka dapat menyediakan tempat yang nyaman untuk menyimpan catatan atau mengelola tugas yang sedang berlangsung, misalnya Anda dapat menyimpan daftar Aktivitas atau perjalanan perjalanan pengguna di dalam gelembung, sehingga selalu ada dalam mudah dijangkau.

Anda bahkan dapat menggunakan gelembung sebagai pengingat, misalnya aplikasi Anda mungkin menghasilkan gelembung ketika tiba waktunya bagi pengguna untuk masuk ke rapat, mengirim email penting, atau melakukan beberapa tugas sensitif waktu lainnya.

Belumkah Facebook menggunakan pemberitahuan gelembung selama bertahun-tahun?

Pemberitahuan gaya gelembung mengambang bukanlah konsep baru untuk Android, karena sudah lama tersedia di aplikasi pihak ketiga, terutama di Facebook Messenger. Namun, sebelumnya adalah tanggung jawab pengembang untuk merancang dan mengimplementasikan pemberitahuan gelembung mereka sendiri.

Membuat fitur khusus adalah selalu lebih memakan waktu daripada meningkatkan kelas dan API yang sudah dibangun ke dalam platform Android, jadi sekarang gelembung secara resmi menjadi bagian dari Android seharusnya banyak lebih mudah bagi pengembang untuk menggunakan gaya notifikasi ini. Dukungan resmi ini juga akan memberikan pengalaman yang lebih konsisten bagi pengguna, karena semua gelembung seharusnya memiliki perilaku yang persis sama, terlepas dari aplikasi yang menghasilkannya.

Android Q gelembung: Apa saja batasannya?

Gelembung ditampilkan di atas konten apa pun yang sedang dilihat pengguna. Jika aplikasi Anda menghasilkan gelembung dalam jumlah besar, atau membuat pemberitahuan gelembung yang tidak perlu, maka pengguna dengan cepat akan kehilangan kesabaran dengan aplikasi Anda.

Seseorang yang merasa dibombardir oleh gelembung dapat memilih untuk menonaktifkan fitur gelembung untuk aplikasi Anda, atau mereka bahkan dapat menghapus aplikasi Anda sepenuhnya.

Untuk melindungi pengalaman pengguna, pemberitahuan gelembung Anda hanya akan ditampilkan jika memenuhi setidaknya satu dari kriteria berikut:

  • Aplikasi Anda ada di latar depan saat notifikasi dikirimkan.
  • Pemberitahuan memiliki Orang yang ditambahkan. Jika ada beberapa orang yang dikaitkan dengan pemberitahuan, maka Anda juga harus menandai percakapan ini sebagai grup, menggunakan setGroupConversation (boolean).
  • Pemberitahuan berasal dari panggilan ke Service.startForeground, memiliki Seseorang yang ditambahkan, dan termasuk dalam kategori pemberitahuan CATEGORY_CALL, yang menunjukkan ini adalah permintaan komunikasi yang sinkron, seperti panggilan suara atau video.

Jika tidak satu pun dari kondisi ini dipenuhi, maka gelembung Anda akan ditampilkan sebagai notifikasi standar. Jika perangkat terkunci atau layar selalu menyala aktif, maka gelembung Anda hanya akan muncul lagi sebagai pemberitahuan standar.

Anda juga harus menyadari bahwa pada saat penulisan, gelembung adalah fitur opsional. Saat aplikasi Anda pertama kali mencoba membuat gelembung, pengguna akan disajikan dengan dialog izin dan mereka akan memiliki opsi untuk menonaktifkan gelembung untuk aplikasi Anda. Jika pengguna menonaktifkan fitur gelembung, maka gelembung aplikasi Anda akan selalu ditampilkan sebagai pemberitahuan standar, bahkan jika mereka memenuhi semua kriteria di atas.

Apa yang akan kita buat

Dalam artikel ini, kami akan membangun aplikasi yang menggunakan fitur pemberitahuan gelembung baru Android Q. Untuk membuat aplikasi kami lebih mudah untuk diuji, ini akan menampilkan tombol yang menghasilkan pemberitahuan gelembung setiap kali diketuk.

Karena aplikasi obrolan adalah pilihan yang paling jelas untuk gelembung, aplikasi kami akan mensimulasikan pengguna yang menerima yang baru, mirip dengan aplikasi Facebook Messenger. Ketika diperluas, gelembung ini akan mencakup ruang tempat akan ditampilkan, ditambah dua tindakan yang dapat dilakukan pengguna: panggil kontak ini, atau kirim respons teks.

Untuk bereksperimen dengan fitur baru ini, Anda memerlukan pratinjau Android Studio 3.5 terbaru. Anda akan menemukan versi terbaru di situs web Preview Release.

Anda juga memerlukan SDK pratinjau Android Q dan Android SDK Build-Tools 28, atau lebih tinggi:

  • Pilih "Tools> SDK Manager" dari bilah alat Android Studio.
  • Di jendela berikutnya, pilih tab "Platform SDK".
  • Pilih rilis terbaru "Pratinjau Q Android."
  • Beralih ke tab "SDK Tools".
  • Pilih "Android SDK Build-Tools 28," atau lebih tinggi.
  • Klik "OK" untuk menginstal komponen ini.

Perhatikan bahwa tutorial berikut ini dibuat menggunakan Android Q Beta 2, ketika pemberitahuan gelembung masih dianggap sebagai fitur eksperimental. Jika Anda menggunakan versi Android Q yang lebih baru, maka Anda mungkin menemukan beberapa perbedaan kecil.

Membangun aplikasi Android Q kami

Untuk memulai, buat proyek Android baru menggunakan templat "Empty Activity", dan ketika diminta pastikan aplikasi Anda menargetkan versi Android Q terbaru.

Jika Anda menambahkan gelembung ke aplikasi yang ada, maka Anda harus membuka file build.gradle proyek Anda dan memutakhirkan kompilasiSdkVersion, minSdkVersion, dan targetSdkVersion menjadi "android-Q."

android {compileSdkVersion android-Q defaultConfig {... minSdkVersion Q targetSdkVersion Q ...} ...}

Selanjutnya, buka file build.gradle Anda dan tambahkan versi terbaru dari Komponen Material untuk pustaka Android ke blok "dependensi" Anda:

dependencies {implementasi fileTree (dir: libs, termasuk:) implementasi androidx.appcompat: appcompat: 1.0.2 implementasi androidx.constraintlayout: constraintlayout: constraintlayout: 1.1.3 // Tambahkan // implementasi berikut com.google.android.material: bahan: material: 1.1.0-alpha07 testImplementation junit: junit: 4.12 androidTestImplementation androidx.test.ext: junit: 1.1.0 androidTestImplementation androidx.test.espresso: espresso-core: 3.1.1}

Membuat antarmuka pengguna utama

Proyek kami pada akhirnya akan membutuhkan dua tata letak: satu untuk aplikasi utama, dan satu yang menentukan tata letak gelembung yang diperluas.

Buka file activity_main.xml proyek Anda, dan mari kita buat tombol yang akan menghasilkan pemberitahuan gelembung kami:

Membuat pemberitahuan gelembung

Selanjutnya, kita perlu membuat pemberitahuan gelembung. Gelembung Android Q dibangun di atas sistem notifikasi Android yang ada, jadi jika Anda memiliki pengalaman sebelumnya bekerja dengan notifikasi Android, maka membuat gelembung akan terasa akrab secara instan.

Anda membuat gelembung Q Android, dengan menyelesaikan langkah-langkah berikut:

1. Buat setidaknya satu saluran pemberitahuan

Android 8.0 memperkenalkan konsep saluran pemberitahuan, di mana semua pemberitahuan yang diposting ke saluran yang sama memiliki perilaku yang sama.

Karena aplikasi kami menargetkan Android 8.0 atau lebih tinggi, semua pemberitahuan kami harus ditetapkan ke saluran pemberitahuan, termasuk gelembung.

Untuk membuat saluran notifikasi, Anda perlu membuat objek NotificationChannel dan meneruskannya:

  • ID, yang harus unik untuk paket Anda.
  • Nama saluran, yang akan ditampilkan kepada pengguna melalui layar pengaturan saluran.
  • Tingkat kepentingan. Di Android Oreo dan yang lebih tinggi, Anda tidak lagi dapat mengatur tingkat prioritas untuk pemberitahuan individual. Alih-alih, Anda harus menentukan tingkat kepentingan saluran, yang kemudian diterapkan ke setiap pemberitahuan yang diposting ke saluran itu. Pemberitahuan gelembung harus ditetapkan tingkat IMPORTANCE_HIGH, karena ini memastikan gelembung akan muncul di layar, terlepas dari apa yang sedang dilakukan pengguna.

Android Q juga memperkenalkan metode setAllowBubbles (), yang memungkinkan Anda menentukan bahwa saluran ini mendukung gelembung ("true"). Nilai setAllowBubbles () akan diabaikan untuk saluran yang memiliki tingkat kepentingan IMPORTANCE_DEFAULT atau lebih rendah, jadi Anda harus menandai saluran Anda sebagai setAllowBubbles (true) dan IMPORTANCE_HIGH.

Dalam cuplikan berikut, kami membuat saluran pemberitahuan kami. Ini juga kesempatan Anda untuk menentukan perilaku tambahan yang diinginkan, seperti apakah pemberitahuan yang diposkan ke saluran ini akan menyebabkan LED perangkat berkedip.

CharSequence name = "Saluran baru saya"; Deskripsi string = "Deskripsi"; int importance = NotificationManager.IMPORTANCE_HIGH; // Buat objek saluran // channel = NotificationChannel baru ("1", nama, pentingnya); channel.setDescription (deskripsi); channel.setAllowBubbles (true);

Anda kemudian dapat mengirimkan objek NotificationChannel ini ke NotificationManager, menggunakan metode createNotificationChannel ():

notificationManager.createNotificationChannel (saluran);

2. Buat niat gelembung

Kemudian dalam tutorial ini, kami akan membuat BubbleActivity yang akan diluncurkan setiap kali pengguna berinteraksi dengan ikon gelembung.

Dalam cuplikan berikut, kami membuat PendingIntent, yang menentukan Aktivitas yang akan ditampilkan di dalam gelembung yang diperluas kami:

Target Intent = Intent baru (MainActivity.this, BubbleActivity.class); PendingIntent bubbleIntent = PendingIntent.getActivity (MainActivity.this, 0, target, PendingIntent.FLAG_UPDATE_CURRENT / * flags * /);

3. Buat BubbleMetaData

Selanjutnya, Anda perlu membuat objek BubbleMetadata, yang akan merangkum semua data yang diperlukan untuk menampilkan gelembung notifikasi kami.

Anda membuat objek BubbleMetadata dengan memanggil konstruktor Notification.BubbleMetadata.Builder. Kami kemudian dapat menggunakan setIntent () untuk menentukan maksud gelembung target, yang akan berjalan setiap kali pengguna berinteraksi dengan gelembung ini.

Notification.BubbleMetadata bubbleData = Notification.BubbleMetadata.Builder baru () ... ... ... .setIntent (bubbleIntent) .build ();

Saat membuat objek BubbleMetadata, kita juga perlu mengatur ikon yang akan mewakili gelembung ini dalam keadaan awal, diciutkan, menggunakan metode Notification.BubbleMetadata.Builder.setIcon (Icon). Kamu harus memberikan ikon untuk setiap gelembung yang dibuat aplikasi Anda, dan ikon ini harus mewakili konten gelembung.

Bentuk ikon gelembung bersifat adaptif, dan dapat dimodifikasi agar sesuai dengan tema perangkat. Perhatikan bahwa jika ikon Anda berbasis bitmap, maka Anda harus menggunakan createWithAdaptiveBitmap, yang akan memastikan ikon Anda dihasilkan sesuai dengan pedoman desain yang ditentukan dalam kelas AdaptiveIconDrawable, atau tag.

Kami juga dapat mengatur ketinggian yang diinginkan untuk konten gelembung, meskipun nilai ini akan diabaikan ketika ruang layar tidak cukup tersedia.

Ini memberi kita yang berikut:

Notification.BubbleMetadata bubbleData = Notification baru.BubbleMetadata.Builder () .setDesiredHeight (600) .setIcon (Icon.createWithResource (MainActivity.this, R.drawable.ic_)) .setIntent (bubbleIntent).

4. Tambahkan metadata ke gelembung

Selanjutnya, kita perlu melampirkan objek BubbleMetadata ke notifikasi kita.

Android Q menambahkan metode setBubbleMetaData () baru ke kelas pembuat notifikasi. Metode ini mengambil instance BubbleMetadata, yang digunakan untuk menampilkan konten gelembung Anda ketika itu dalam keadaan diperluas.

.setBubbleMetadata (bubbleData);

MainActivity yang selesai

Setelah menyelesaikan semua langkah di atas, MainActivity Anda akan terlihat seperti ini:

impor androidx.appcompat.app.AppCompatActivity; impor android.app.Notification; impor android.app.NotificationChannel; impor android.app.NotificationManager; impor android.app.PendingIntent; impor android.content.Context; impor android.content.Intent; impor android.graphics.drawable.Icon; impor android.os.Bundle; impor android.widget.Button; impor android.view.View; MainActivity kelas publik memperluas AppCompatActivity mengimplementasikan View.OnClickListener {Tombol createBubble; Pemberitahuan. Pembuat builder; NotificationManager notificationManager; Saluran Kanal Pemberitahuan; @Override void onCreate yang dilindungi (Bundle saverInstanceState) {super.onCreate (saverInstanceState); setContentView (R.layout.activity_main); createBubble = findViewById (R.id.createBubble); notificationManager = (NotificationManager) getSystemService (Cont.NOTIFICATION_SERVICE); CharSequence name = "Saluran baru saya"; Deskripsi string = "Deskripsi"; int importance = NotificationManager.IMPORTANCE_HIGH; // Buat objek saluran // channel = NotificationChannel baru ("1", nama, pentingnya); channel.setDescription (deskripsi); channel.setAllowBubbles (true); createBubble.setOnClickListener (ini); } @Override public void onClick (Tampilan tampilan) {switch (view.getId ()) {case R.id.createBubble: // Aktivitas yang akan ditampilkan di dalam gelembung yang diperluas kami // Target sasaran = Maksud baru (MainActivity. ini, BubbleActivity.class); // Buat PendingIntent // PendingIntent bubbleIntent = PendingIntent.getActivity (MainActivity.this, 0, target, PendingIntent.FLAG_UPDATE_CURRENT / * flags * /); // Buat objek BubbleMetadata // Notification.BubbleMetadata bubbleData = Notification baru.BubbleMetadata.Builder () // Tetapkan ketinggian gelembung yang diinginkan // .setDesiredHeight (600) // Tetapkan ikon gelembung // .setIcon (Icon.createWithResource ( MainActivity.this, R.drawable.ic_)) // Tentukan niat gelembung target // .setIntent (bubbleIntent) .build (); builder = Notification.Builder baru (MainActivity.this, channel.getId ()) .setSmallIcon (R.drawable.ic_) // Tambahkan objek BubbleMetadata // .setBubbleMetadata (bubbleData); // Kirimkan NotificationChannel ke NotificationManager // notificationManager.createNotificationChannel (channel); notificationManager.notify (1, builder.build ()); istirahat; }}}

Membuat ikon gelembung

MainActivity kami mereferensikan drawable "ic_", yang akan digunakan untuk merepresentasikan gelembung kami dalam kondisi awal, runtuh. Mari kita buat ikon ini sekarang:

  • Pilih "File> New> Image Asset" dari bilah alat Android Studio.
  • Buka tarik-turun "Tipe Ikon" dan pilih "Bilah Tindakan dan Ikon Tab."
  • Pastikan tombol "Clip Art" dipilih.
  • Beri tombol "Clip Art" klik.
  • Pilih gambar yang akan mewakili pemberitahuan gelembung Anda; Saya memilih untuk "."
  • Klik "OK."
  • Di bidang "Nama", masukkan "ic_."
  • Klik "Selanjutnya." Baca informasi di layar, dan jika Anda senang melanjutkan, klik "Selesai."

Sementara kita di sini, mari kita buat aset gambar lain yang akan kita gunakan sepanjang tutorial ini. Gelembung kami yang diperluas pada akhirnya akan menggunakan dua ikon untuk mewakili dua tindakan berbeda: memanggil kontak, dan mengirimkannya tanggapan teks.

Untuk membuat drawables ini, ulangi langkah-langkah di atas, tetapi kali ini:

  • Pilih gambar yang akan mewakili aksi "panggilan" gelembung. Saya menggunakan sumber daya "mic" dan menamainya "ic_voice."
  • Pilih gambar yang akan mewakili aksi "balas ke" gelembung. Saya menggunakan "balasan" yang dapat ditarik, dan menamainya "ic_reply."

Membangun Aktivitas gelembung

Selanjutnya, kita perlu membuat Aktivitas yang akan ditampilkan kepada pengguna setiap kali mereka berinteraksi dengan gelembung kita.

  • Pilih "File> New> Java Class" dari bilah alat Android Studio.
  • Di jendela berikutnya, beri nama kelas ini "BubbleActivity."
  • Klik "OK."

Kami akan menggunakan kelas ini untuk menentukan konten gelembung, termasuk tindakan apa pun yang dapat dilakukan pengguna dengan berinteraksi dengan gelembung yang diperluas. Untuk membantu menjaga kode kami secara langsung, saya hanya akan menampilkan bersulang setiap kali pengguna memicu aksi "kirim" dan "voiceCall" gelembung.

Buka kelas BubbleActivity Anda, dan tambahkan yang berikut:

impor androidx.appcompat.app.AppCompatActivity; impor android.os.Bundle; impor android.widget.ImageButton; impor android.widget.Toast; impor android.view.View; kelas publik BubbleActivity memperluas aplikasi yang mengimplementasikan AppCompatActivity View.OnClickListener {@Override void onCreate yang dilindungi (Bundle SavedInstanceState) {super.onCreate (SavedInstanceState); setContentView (R.layout.activity_bubble); ImageButton voiceCall = (ImageButton) findViewById (R.id.voice_call); voiceCall.setOnClickListener (ini); ImageButton send = (ImageButton) findViewById (R.id.send); send.setOnClickListener (ini); } @Override public void onClick (Lihat v) {switch (v.getId ()) {case R.id.voice_call: Toast.makeText (BubbleActivity.this, "Memanggil kontak", Toast.LENGTH_SHORT) .show (); istirahat; case R.id.send: Toast.makeText (BubbleActivity.this, "Sending", Toast.LENGTH_SHORT) .show (); istirahat; }}}

Merancang tata letak gelembung yang diperluas

Sekarang, kita perlu membuat tata letak yang sesuai untuk BubbleActivity kita. Tata letak ini terdiri dari:

  • A RecylerView. Di aplikasi perpesanan dunia nyata, ini adalah tempat kami menampilkan yang baru diterima, plus yang sebelumnya.
  • EditText. Ini akan memungkinkan pengguna untuk mengetik respons mereka langsung ke pemberitahuan gelembung.
  • Dua ImageButtons. Ini akan menampilkan ikon yang dapat diketuk pengguna, untuk mengirim respons teks atau memanggil orang yang mengirim ini.

Buat file tata letak baru bernama "activity_bubble," dengan Mengontrol mengklik direktori tata letak proyek Anda dan kemudian memilih "Baru> file sumber daya Tata Letak" dari bilah alat Android Studio.

Buka file "activity_bubble.xml" Anda, dan tambahkan yang berikut:

Multi-jendela dan dokumen UI: Memperbarui Manifes

Jika Android akan mengenali BubbleActivity sebagai gelembung yang diperluas, maka kita perlu membuka Manifest kita dan membuat beberapa perubahan pada deklarasi “BubbleActivity” -nya.

1. Tambahkan dukungan multi-jendela

Mulailah dengan menentukan bahwa BubbleActivity Anda mendukung tampilan multi-jendela Android:

android: resizeableActivity = "true"

2. Aktifkan allowEmbedded

Gelembung ditampilkan di dalam wadah yang dimiliki oleh Aktivitas lain, sehingga tugas kami berikutnya adalah menyatakan bahwa BubbleAtivity dapat diluncurkan sebagai anak tersemat dari Aktivitas lain:

android: allowEmbedded = "true"

3. Izinkan beberapa kali

Terkadang, aplikasi Anda mungkin perlu menampilkan beberapa gelembung dengan jenis yang sama.

Karena kami membuat aplikasi obrolan, ada kemungkinan pengguna dapat menerima banyak dari orang yang berbeda secara bersamaan. Untuk menghindari kebingungan, penting bagi kami untuk mewakili setiap percakapan sebagai gelembungnya sendiri, meskipun itu berarti memiliki beberapa gelembung terlihat di layar.

Jika Anda ingin aplikasi Anda menampilkan beberapa gelembung dari jenis yang sama, maka itu harus mampu meluncurkan beberapa instance.

Untuk memberi aplikasi Anda kemampuan untuk membuat banyak instance, tambahkan yang berikut ini ke deklarasi “BubbleActivity” Anda:

android: documentLaunchMode = "always"

Manifest yang sudah selesai

Setelah melakukan semua langkah di atas, bagian "BubbleActivity" Manifest Anda akan terlihat seperti ini:

Menguji gelembung Q Android Anda

Untuk menguji pemberitahuan gelembung Anda, Anda akan memerlukan perangkat fisik yang menjalankan pratinjau Android Q atau lebih tinggi, atau Android Virtual Device (AVD) yang dikonfigurasi untuk mendukung Android Q.

Untuk membuat AVD yang kompatibel:

  • Pilih "Alat> Manajer AVD" dari bilah alat Android Studio.
  • Pilih "Buat Perangkat Virtual ..."
  • Pilih definisi perangkat yang ingin Anda gunakan, dan kemudian klik "Selanjutnya."
  • Pada layar "Pilih gambar sistem", pilih gambar sistem "Q" terbaru. Jika Anda belum mengunduh Android Q, lalu klik tautan "Unduh" yang menyertainya dan tunggu gambar sistem diunduh ke mesin Anda.

  • Beri nama AVD Anda, lalu klik "Selesai."

Untuk menguji aplikasi Anda:

  • Luncurkan aplikasi Anda pada AVD yang kompatibel atau perangkat Android fisik.
  • Ketuk tombol "Buat pemberitahuan gelembung". Gelembung sekarang akan muncul di layar.
  • Beri ikon gelembung klik, untuk melihatnya sebagai gelembung yang diperluas.
  • Jika diminta, beri izin aplikasi Anda untuk menampilkan gelembung, dengan mengetuk "Izinkan."
  • Berikan aksi "panggilan" gelembung itu klik, dan roti bakar "Kontak panggilan" akan muncul.
  • Coba klik tindakan "balas"; roti bakar "Mengirim" sekarang akan muncul.

Anda dapat mengunduh proyek yang sudah selesai dari GitHub.

Membuat gelembung yang diperluas secara otomatis

Saat ini, semua gelembung aplikasi kami muncul dalam keadaan runtuh, dan hanya akan diperluas jika pengguna berinteraksi dengannya. Namun, dimungkinkan untuk membuat gelembung yang diluncurkan dalam keadaan diperluas secara otomatis.

Biasanya, Anda hanya harus mengonfigurasi tombol untuk muncul dalam keadaan diperluas, jika pengguna melakukan tindakan yang secara langsung menghasilkan gelembung itu, seperti mengetuk tombol untuk meluncurkan jendela obrolan baru, atau membuat dokumen baru.

Anda dapat membuat gelembung yang diperluas, dengan menambahkan setAutoExpandBubble (true) ke objek BubbleMetadata Anda.

Perlu diketahui bahwa gelembung ini hanya akan diposting dalam keadaan diperluas, jika aplikasi terkait ada di latar depan. Jika aplikasi yang membuat gelembung ini tidak ada di latar depan, maka metode setAutoExpandBubble () akan diabaikan sepenuhnya.

Dalam cuplikan berikut, kami menyatakan bahwa konten gelembung harus diperluas secara otomatis:

Notification.BubbleMetadata bubbleData = Notification baru.BubbleMetadata.Builder () .setDesiredHeight (600) // Tambahkan baris berikut // .setAutoExpandBubble (true) .setIcon (Icon.createWithResource (MainActivity.this, R.). setIntent (bubbleIntent) .build ();

Instal proyek yang diperbarui pada perangkat AVD atau Android Anda, dan ketuk tombol "Buat pemberitahuan gelembung". Alih-alih ikon gelembung muncul di layar, gelembung Anda sekarang harus diluncurkan dalam keadaan diperluas secara otomatis.

Mendapatkan hasil maksimal dari gelembung: Praktik terbaik

Seperti halnya setiap fitur baru, gelembung hadir dengan praktik terbaiknya sendiri.

Saat menambahkan pemberitahuan gelembung ke aplikasi Android Anda, penting untuk mengingat hal-hal berikut:

1. Jangan membanjiri pengguna

Gelembung mengambil sejumlah besar layar real estat, dan berpotensi mengganggu apa pun yang sedang dilakukan pengguna.

Jika Anda membombardir pengguna dengan gelembung, maka dalam skenario kasus terbaik mereka akan memblokir aplikasi Anda dari mengeluarkan gelembung apa pun, dan dalam skenario terburuk mereka bahkan dapat menghapus aplikasi Anda sepenuhnya.

Untuk menghindari mengasingkan pengguna Anda, Anda hanya harus mengeluarkan pemberitahuan gelembung untuk acara yang cukup penting untuk menjamin perhatian langsung pengguna.

2. Fokus pada kesederhanaan

Semua proses yang diluncurkan dari gelembung ditempatkan di dalam wadah gelembung itu, yang seringkali jauh lebih kecil daripada Aktivitas biasa.

Untuk memberikan pengalaman pengguna yang baik, Anda harus menghindari godaan untuk mengemas gelembung Anda yang penuh dengan informasi dan fitur, dan sebagai gantinya membuat gelembung yang seringan dan semudah mungkin.

3. Uji gelembung Anda sebagai notifikasi reguler

Ada beberapa kondisi di mana gelembung Anda akan disajikan kepada pengguna sebagai pemberitahuan standar, misalnya jika perangkat terkunci atau layar selalu aktif aktif.

Untuk memastikan pengalaman pengguna yang baik terlepas dari bagaimana gelembung Anda disajikan, Anda harus menguji bagaimana masing-masing gelembung Anda muncul dan berfungsi ketika gelembung itu ditampilkan sebagai pemberitahuan gelembung dan sebagai pemberitahuan reguler.

Membungkus

Dalam artikel ini, kami melihat bagaimana Anda dapat mulai menggunakan fitur gelembung Android Q hari ini. Selama artikel ini, kami telah membuat aplikasi yang memicu runtuh dan gelembung diperluas sesuai permintaan, dan isi gelembung diperluas dengan Tampilan dan tindakan khusus.

Apa fitur Q Android lainnya yang Anda tunggu-tunggu? Beri tahu kami di komentar di bawah!

Jack headphone telah menghilang dari ebagian bear martphone unggulan. Mekipun LG dan amung maih mempertahankan port pada beberapa perangkatnya, iapa yang tahu berapa lama itu akan bertahan....

Kita akhirnya hidup di zaman di mana kinerja ponel cerda bukanlah euatu yang kita khawatirkan lagi, etidaknya dalam produk tingkat premium. Performa tinggi teredia dengan anggaran terbata, terima kaih...

Publikasi Kami