Single post

7.3: Broadcast Receivers

Task 1. Set up the PowerReceiver Project

Dalam praktik ini Anda akan belajar:

  • Membuat subkelas dan mengimplementasikan BroadcastReceiver.
  • Mendaftar intent Siaran sistem.
  • Membuat dan mengirim intent Siaran khusus.

1.1 Membuat Proyek

Membuat proyek baru bernama PowerReceiver, menerima opsi default dan menggunakan template Empty

Membuat Penerima Siaran baru. Pilih nama paket dalam Tampilan Proyek Android dan buka File > New > Other > Broadcast Receiver

Beri nama kelasnya CustomReceiver dan pastikan “Exported” dan “Enabled” dicentang

1.2 Mendaftarkan Penerima untuk siaran sistem

Dalam file AndroidManifest.xml, tambahkan kode berikut di antara tag <receiver> untuk mendaftarkan Penerima Anda untuk Intent system

1.3 Mengimplementasikan onReceive() dalam BroadcastReceiver

Buka file CustomReceiver, dan hapus implementasi default dalam metode onReceive() kemudian dapatkan tindakan dari intent dan simpan dalam variabel String bernama intentAction

Buat pernyataan switch dengan string intentAction, agar aplikasi dapat menampilkan pesan toast yang berbeda untuk setiap tindakan spesifik yang didaftarkan kepada penerima. Serta :

  1. Inisialisasi variabel String bernama toastMessage sebelum pernyataan switch, dan jadikan nilainya null agar bisa disetel tergantung pada tindakan siaran yang Anda terima.
  2. Tetapkan toastMessage ke “Power connected!” jika tindakannya ACTION_POWER_CONNECTED, dan “Power disconnected!” jika ACTION_POWER_DISCONNECTED. Ekstrak sumber daya string.
  3. Tampilkan pesan toast untuk durasi pendek setelah pernyataan switch:
    Toast.makeText(context, toastMessage, Toast.LENGTH_SHORT).show()

Run your app

1.4 Membatasi Penerima Siaran

Agar penerima siaran hanya aktif ketika aplikasi ditampilkan, aktifkan penerima dalam onStart() dan nonaktifkan dalam onStop().

Task 2. Send and Receive a Custom Broadcast

2.1 Mendefinisikan string Tindakan Siaran khusus

Buat variabel String konstan dalam MainActivity dan kelas CustomReceiver untuk digunakan sebagai Tindakan Intent Siaran (ini adalah string tindakan khusus)

2.2 Tambahkan Tombol “Send Custom Broadcast”

Dalam file activity_main.xml, tambahkan tampilan Tombol

2.3 Mengimplementasikan sendCustomBroadcast()

Dalam metode sendCustomBroadcast() di MainActivity, buat Intent baru, dengan string tindakan khusus sebagai argument

    2.4 Mendaftarkan Siaran Khusus   

2.5 Merespons Siaran Khusus

hasil run

LEAVE A COMMENT

theme by teslathemes