skripsi implementasi push notification scheduler …

14
SKRIPSI IMPLEMENTASI PUSH NOTIFICATION SCHEDULER PADA FIREBASE CLOUD MESSAGING UNTUK APLIKASI PENGINGAT KEGIATAN ORGANISASI MENGGUNAKAN FLUTTER BERBASIS MOBILE RIFQI DARMAWAN Nomor Mahasiswa : 155410125 PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM YOGYAKARTA 2019

Upload: others

Post on 03-Oct-2021

13 views

Category:

Documents


0 download

TRANSCRIPT

FIREBASE CLOUD MESSAGING UNTUK APLIKASI PENGINGAT
KEGIATAN ORGANISASI MENGGUNAKAN FLUTTER BERBASIS
MOBILE
AKAKOM
YOGYAKARTA
2019
i
SKRIPSI
FIREBASE CLOUD MESSAGING UNTUK APLIKASI PENGINGAT
KEGIATAN ORGANISASI MENGGUNAKAN FLUTTER BERBASIS
MOBILE
Diajukan sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
Studi Teknik Informatika
Akakom Yogyakarta
Disusun Oleh:
RIFQI DARMAWAN
SKRIPSI ini saya persembahkan untuk:
Allah SWT atas segala limpahan karunia yang telah Ia berikan, sehingga
SKRIPSI ini dapat diselesaikan dengan baik.
Orang Tua yang selalu mendoakan, memberi semangat, menyayangi dan
mencintai saya sepenuh hati serta meridhoi segala sesuatu yang saya
kerjakan.
Dosen Pembimbing Pak Pius Dian Widi Anggoro S.Si., M.Cs. yang
selalu mendukung dan memberikan semangat selama proses penyelesaian
skripsi ini.
membantu, mendukung, dan memberi semangat kepada saya.
v
MOTTO
"I’ve always believed in one phrase… and my entire life… has always
proven this phrase… in this world… nothing is impossible!" Ni
Tian Xie Shen
"Never give up. Today is hard, tomorrow will be worse, but the day
after tomorrow will be sunshine." Jack Ma
"It's ineffective to deal with many problems at once." Hishiro
Chizuru
vi
INTISARI
komputer/notebook, dan memo pada telepon seluler sebagai alat pengingat atau
sebagai alat pencatat kebutuhan sehari-hari. Seseorang biasanya mencatat agenda
pada suatu buku khusus untuk meng agendakan suatu hal yang penting, misalnya
rapat. Tetapi pencatatan memo pada bentuk kertas sangat kurang efektif sebagai
alat pengingat, karena selain kertas itu tipis kertas juga mudah hilang, sobek,
maupun basah. Sedangkan untuk aplikasi memo pada smartphone biasanya hanya
mencantumkan kegiatan atau janji saja, sangat jarang yang memiliki fitur seperti
reminder dalam bentuk notifikasi. Atau jika dalam suatu organisasi akan melakukan
kegiatan biasanya akan diumumkan ke anggota nya melalui lisan, surat, ataupun
sosial media saja sehingga risiko untuk lupa sangat besar karena biasanya hanya
diumumkan sekali saja. Oleh karena itu sangat diperlukan aplikasi yang bisa
menyajikan catatan sekaligus reminder sebagai fitur untuk memberi notifikasi
kepada seseorang.
keperluan pemberitahuan melalui pesan pendek yang ada di smartphone. Dengan
adanya layanan Push Notification tersebut, pengguna dapat terbantu dalam hal yang
bersifat pemberitahuan secara singkat. Pada implementasinya Push Notification
dapat dimanfaatkan dalam berbagai keperluan sehari-hari misalnya untuk
monitoring absensi, update berita terbaru, dan sebagainya.
Berdasarkan masalah tersebut maka penulis membuat dan meneliti aplikasi
Pengingat Kegiatan Organisasi yang dibangun diatas platform android dengan
menggunakan SDK Flutter yang mengimplementasikan Cron Job pada Firebase
Cloud Messaging untuk scheduler, yang diharapkan dapat mempermudah dan
bermanfaat bagi pengurus organisasi dalam menyampaikan informasi ke anggota.
Kata Kunci : Android, Cron Job, Firebase Cloud Messaging, Flutter, Reminder.
vii
Skripsi dengan judul “Implementasi Push Notification Scheduler pada Firebase
Cloud Messaging untuk Aplikasi Pengingat Kegiatan Organisasi Menggunakan
Flutter Berbasis Mobile”. Laporan Skripsi ini disusun untuk memenuhi salah satu
syarat dalam memperoleh gelar Sarjana Komputer pada Sekolah Tinggi Manajemen
Informatika dan Komputer Yogyakarta.
Dengan melakukan penelitian dan penyusunan Tugas Akhir ini penulis telah
mendapatkan banyak dukungan dan bantuan dari berbagai pihak. Penulis
mengucapkan terima kasih yang tak terhingga kepada:
1. Allah SWT yang telah memberikan ridho, bimbingan , berkah , rahmat , hidayah
dan inayah kepada penulis selama melakukan penelitian dan menyusun laporan
skripsi ini.
2. Keluarga tercinta, Ayah, Ibu dan saudara yang selalu mendukung dalam
menyelesaikan Skripsi ini.
3. Terima kasih untuk seluruh teman-teman yang telah membantu kelancaran
pembuatan Skripsi, Terima kasih atas bantuan dan kerjasamanya selama ini.
4. Ir.Totok Suprawoto., MM., MT, selaku Ketua Sekolah Tinggi Manajemen
Informatika dan Komputer yang telah berkenan memberikan izin dalam
pembuatan skripsi ini.
viii
5. Dini fakta Sari S.T., M.T, selaku Ketua Program Studi Strata 1 Teknik
Informatika Sekolah Tinggi Manajemen Informatika dan Komputer pembimbing
yang telah berkenan memberikan izin untuk mengikuti ujian skripsi ini.
6. Pius Dian Widi Anggoro S.Si., M.Cs. selaku dosen pembimbing yang telah
berkenan memberikan izin untuk mengikuti ujian skripsi ini dan yang telah penuh
kesabaran dan ketulusan memberikan ilmu dan bimbingan terbaik kepada
penulis.
7. Para dosen Program Studi Strata 1 Teknik Informatika Sekolah Tinggi
Manajemen Informatika dan Komputer yang telah memberikan bekal ilmu kepada
penulis.
Penulis menyadari sepenuhnya bahwa laporan skripsi ini masih jauh dari
sempurna. Untuk itu, semua jenis saran, kritik dan masukkan yang bersifat
membangun sangat penulis harapkan. Akhir kata, semoga tulisan ini dapat
memberikan manfaat dan memberikan wawasan tambahan bagi pembaca dan
khususnya bagi penulis sendiri.
2.1 Tinjauan Pustaka ...................................................................................... 7
2.2 Dasar Teori ............................................................................................. 11
2.1.5 Push Notification ............................................................................. 13
2.1.6 Android Studio ................................................................................ 13
2.1.7 Cron Job .......................................................................................... 14
2.1.8 RESTful API ................................................................................... 14
3.3 Perancangan Sistem ................................................................................ 18
3.3.1 Usecase Diagram ............................................................................. 18
3.3.2 Sequence Diagram .......................................................................... 19
3.3.3 Activity Diagram ............................................................................. 22
3.3.4 Class Diagram ................................................................................. 25
BAB IV IMPLEMENTASI DAN PEMBAHASAN SISTEM ............................. 31
4.1 Implementasi dan Uji Coba Sistem ........................................................ 31
4.1.1 Kode Program Authentication Menggunakan Google .................... 31
4.1.2 Kode Program Authentication Menggunakan Anonymous ............ 32
4.1.3 Kode Program Menyimpan Data Pesan .......................................... 32
4.1.4 Kode Program Cron Job Scheduling Setiap 1 Menit Sekali ........... 33
4.1.5 Kode Program Menampilkan Pesan ................................................ 33
4.1.6 Kode Program Untuk Dapat Menerima Notifikasi ......................... 33
4.2 Pembahasan ............................................................................................ 34
4.2.6 Tampilan Daftar Kehadiran............................................................. 39
Gambar 3.1 Desain Sistem Keseluruhan ............................................................... 15
Gambar 3.2 Usecase Aplikasi ............................................................................... 18
Gambar 3.3 Sequence Diagram Membuat Grup ................................................... 19
Gambar 3.4 Sequence Diagram Membuat Pesan Notifikasi ................................. 20
Gambar 3.5 Sequence Diagram Timeline ............................................................. 21
Gambar 3.6 Activity Diagram Authentication ...................................................... 22
Gambar 3.7 Activity Diagram Timeline ............................................................... 23
Gambar 3.8 Activity Diagram Membuat Pesan .................................................... 24
Gambar 3.9 Class Diagram ................................................................................... 25
Gambar 3.10 Rancangan Halaman Home/Timeline ............................................. 26
Gambar 3.11 Rancangan Detail Pesan .................................................................. 26
Gambar 3.12 Rancangan Alasan Ketidakhadiran ................................................. 27
Gambar 3.13 Rancangan Halaman Grup .............................................................. 27
Gambar 3.14 Rancangan Membuat Grup (Menambah Anggota) ......................... 28
Gambar 3.15 Rancangan Membuat Grup (Mengatur Nama Grup dan Foto Grup)
............................................................................................................................... 28
Gambar 3. 18 Rancangan Tampilan Notifikasi ..................................................... 30
Gambar 4.1 Kode Program Authentication Menggunakan Google ...................... 31
Gambar 4.2 Kode Program Authentication Menggunakan Anonymous .............. 32
Gambar 4.3 Kode Program Menyimpan Data Pesan ............................................ 32
Gambar 4.4 Kode Program Cron Job Scheduling Setiap 1 Menit Sekali ............. 33
Gambar 4.5 Kode Program Menampilkan Pesan .................................................. 33
Gambar 4.6 Kode Program Untuk Dapat Menerima Notifikasi ........................... 34
Gambar 4.7 Tampilan Sign In ............................................................................... 34
Gambar 4.8 Tampilan Sign Up ............................................................................. 35
xii
Gambar 4.10 Tampilan Isi Grup ........................................................................... 36
Gambar 4.11 Tampilan Daftar Pesan .................................................................... 37
Gambar 4.12 Tampilan Menambah Pesan ............................................................ 38
Gambar 4.13 Tampilan Daftar Kehadiran ............................................................. 39
Gambar 4.14 Tampilan Notifikasi......................................................................... 40
Tabel 4.1 Pengujian Kecepatan Penerimaan Notifikasi Berdasarkan Perangkat .. 44
Tabel 4.2 Pengujian Kecepatan Penerimaan Notifikasi Berdasarkan Jaringan .... 44
Tabel 4.3 Pengujian Penerimaan Notifikasi Setelah Dalam Kondisi Online Dari
Offline ................................................................................................................... 45