Kadang kita perlu membuat notifikasi dalam aplikasi Android kita untuk memberitahu user bahwa telah terjadi ‘sesuatu’ dalam aplikasi. ‘Sesuatu’itu dapat berupa informasi baru, perubahan status, atau mungkin hasil pengolahan data yang dihasilkan aplikasi. Notifikasi ini nantinya akan ditampilkan di bagian atas layar Android (seperti halnya jika ada notifikasi pesan baru dari SMS/Email/WhatsApp) dan di jendela scroll down Android (jendela ketika kita menggulung ke bawah di home screen Android).
Untuk membuat notifikasi di Android menggunakan Delphi XE8 caranya cukup mudah. Dalam beberapa menit Anda akan dengan mudah membuatnya, karena di Delphi XE8 sudah menyediakan komponen khusus untuk menangani event notifikasi ini.
Adalah komponen TNotificationCenter yang berada di tab ‘Service’ di Component Pallete yang berfungsi untuk menangani proses notifikasi di Delphi XE8. Cukup drag and drop komponen ini ke form designer dan tuliskan script berikut untuk membuat notifikasi di Android. Tambahkan pula satu komponen Button yang nantinya jika ditekan akan memunculkan notifikasi di home screen Android. Ubah properti ‘Text’ milik komponen menjadi ‘Noitf Now’ di jendela Object Inspector.
Berikut ini adalah event handler untuk event onClick komponen Button1
procedure TForm1.Button1Click(Sender: TObject); var Notification: TNotification; begin if NotificationCenter1.Supported then begin Notification := NotificationCenter1.CreateNotification; try Notification.Name := 'MyNotif'; Notification.AlertBody := 'Ini Notifku!'; Notification.FireDate := Now; NotificationCenter1.ScheduleNotification(Notification); finally Notification.DisposeOf; end; end end;
Berikutnya tambahkan satu komponen Button lagi di form designer. Ubah properti ‘Text’ komponen ini menjadi ‘Notif later’ melalui jendela Object Inspector. Tombol yang kedua ini kita rancang supaya menampilkan notifikasi 3 detik setelah tombol ditekan. Double click komponen Button2 dan isikan event onClick komponen ini sebagai berikut :
procedure TForm1.Button2Click(Sender: TObject); var Notification: TNotification; begin if NotificationCenter1.Supported then begin Notification := NotificationCenter1.CreateNotification; try Notification.Name := 'MyNotif'; Notification.AlertBody := 'Ini notifku - 3 dtk'; //3 detik Notification.FireDate := Now + EncodeTime(0,0,3,0); //kirim Notif NotificationCenter1.ScheduleNotification(Notification); finally Notification.DisposeOf; end; end end;
Silahkan compile dan run project di atas (F9). Saya sarankan gunakan langsung device Android daripada menggunakan emulator. Jika sudah, hasilnya akan tampak seperti gambar di bawah:
Saat tombol ‘Notif Now’ ditekan
Tampilan home screen Android (gulung layar ke bawah dulu)
Terlihat ada tulisan notifikasi ‘Ini Notifku!’ di jendela Android sesuai dengan script yang Anda tulis.
Bagaimana? Mudah bukan? Script di atas hanya sekedar contoh penggunaan komponen TNotificationCenter saja. Tentunya akan sangat mudah diintegrasikan dalam aplikasi Anda, misalnya untuk pengingat/reminder jadwal, ada pesan/chat dari user lain, adanya input sensor dengan nilai tertentu, dll. Semuanya tergantung pada kebutuhan aplikasi Anda masing-masing. Selamat mencoba…
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
Mas sapta,
Saya jafar dari kalsel , mau nanya masalah notifikasi buat android, saya membuat apps calender. Gmna yaa biar apps yg di close notif ttp jalan. Misalnya setiap hari minggu ada tampil notif
salam kenal mas jafar, bulan kmr sy ke banjarmasin mas, diundang salah satu perguruan tinggi di sana buat ngadain pelatihan delphi-android
Untuk pertanyaan mas, aplikasinya harus berupa android service, jadi ketika app di close, app running in the background. Untuk membuat aplikasi android service dengan delphi, kita harus men-develop-nya (minimal) dengan delphi 10 Seatle. Versi dibawahnya itu (termasuk Delphi XE8) belum bisa/belum ada fasilitas membuat Android Service
Mantep mas sapta 😃 , kalo boleh tau kmrn di perguruan mana? Saya masih kuliah mas mau menuju TA hehe
Nah gini saya uda pake rad xe 10,trs saya uda pake android service dan berhasil run di background. Nah tapi saya bingung cara naroh eventnya. Notifnya ga muncul, klo aja bisa post screnshotnya jd lbh enak
punya ane kok gak bisa di drag Tnotif nya mas aji,, saya juga pakai xe8
wah, ga tau mas 🙂 coba cek lg script-nya
mas, kalau mengirim notif dari arduino uno ke android pake delphi bisa ga ya? makasih..:)
bisa aja mb
mas misalnya mau kasih notif kalau ada perubahan data digrid gimana mas, digrid nantinya ditampilin data dari satu table nanti misalnya ada data baru masuk ditable nanti digrid juga berubah cara bikin notif nya gimana mas , sama supaya data dari database yang tampil di grid jadi update otomatis terus menerus tanpa diklose aplikasinya gimana mas
coba dicek event di komponen tersebut. Contoh: onChange, OnDataTransaction, dll. Cari event yang pas dengan kebutuhan Anda
note: event itu semacam trigger yang akan dipicu jika terjadi. Contoh jika kita isi script ‘X’ di event onClick komponen Button ‘Y’, maka setiap ada penekanan tombol ‘Y’, event onClick akan terpicu dan mengeksekusi script ‘X’
mas saya saiful jawa tengah, mau tanya..maaf diluar judul. kalau saya sdh buat apliaksi android dengan delphi Rio. kalau mau koneksi kedatabasenya gimana ya?
saya pakai FireDAC tapi ketika ditambahkan component fireDAC malah error.
katanya FDPhysMSQLDriverLink notfound.
padahal ketika desain windows 32bit bisa muncul, itu kenapa mas?
intinya bagaimana cara mengkoneksikan dan menampilkan data di HPnya.
database saya mysql(xampp)
jadi pengenya konek lewat jaringan(nantinya online ke databasenya).trims
maaf kalau bulet
kalo yg saya tangkap dr pernyataan mas di atas, database ada di server. Berarti mas perlu semacam API (handler) yg bisa menangani request dr aplikasi mobile-nya. Kalo fireDAC itu komponen untuk koneksi database tapi databasenya ada di hp itu sendiri, bukan di server