hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL...

67
LAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1 APLIKASI PENYEDIA INFO LOWONGAN KERJA “LOKERKITA” Disusun Oleh: Kelompok 5 Charir Maulana Achsan 16.11.0217 Bagus Anjas P 16.11.0221 Mustofa Bayu Rahmat 16.11.0245 Esa Rizki Anandrian 16.11.0248 Danang Aldy Kurniawan 16.11.0267 Tri Wahyono 16.11.0284 Sarif Hidayatulloh 16.11.0286 Muchamad Arief Sidik 16.11.0296 Adent Bima Prasetya 16.11.0301 Dhimas Galih Prasetyo 16.11.0308 Eva Faiza 16.11.0317 Ikhsan Setiawan 16.11.0344 Kelas : TI16S PROGRAM STUDI TEKNIK INFORMATIKA

Transcript of hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL...

Page 1: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

LAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1

APLIKASI PENYEDIA INFO LOWONGAN KERJA

“LOKERKITA”

Disusun Oleh:

Kelompok 5

Charir Maulana Achsan 16.11.0217Bagus Anjas P 16.11.0221Mustofa Bayu Rahmat 16.11.0245Esa Rizki Anandrian 16.11.0248Danang Aldy Kurniawan 16.11.0267Tri Wahyono 16.11.0284Sarif Hidayatulloh 16.11.0286Muchamad Arief Sidik 16.11.0296Adent Bima Prasetya 16.11.0301Dhimas Galih Prasetyo 16.11.0308Eva Faiza 16.11.0317Ikhsan Setiawan 16.11.0344

Kelas : TI16S

PROGRAM STUDI TEKNIK INFORMATIKA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM PURWOKERTO

2018

Page 2: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

DAFTAR ISI

Daftar Isi.....................................................................................................................................i

Kata Pengantar..........................................................................................................................iv

BAB I PENDAHULUAN..........................................................................................................1

1.1 Latar Belakang.............................................................................................................1

1.2 Rumusan Masalah.......................................................................................................1

1.3 Batasan Masalah..........................................................................................................2

1.4 Tujuan Penelitian........................................................................................................2

BAB II LANDASAN TEORI....................................................................................................3

2.1 Android........................................................................................................................3

2.2 Firebase........................................................................................................................3

BAB III PERANCANGAN.......................................................................................................4

3.1 Perancangan User Interface.........................................................................................4

3.1.2 Tampilan Login..........................................................................................................4

3.1.3 Tampilan Register......................................................................................................4

3.1.4 Tampilan Dashboard Admin......................................................................................5

3.1.5 Tampilan Input Data Lowongan................................................................................5

3.1.6 Tampilan Lihat Data..................................................................................................6

3.1.7 Tampilan Edit/Delete Data........................................................................................6

3.1.8 Tampilan Halaman Utama User................................................................................7

3.1.9 Tampilan About.........................................................................................................7

3.2 Source Code XML.......................................................................................................8

3.2.1 Login..........................................................................................................................8

3.2.2 Dashboard Admin....................................................................................................10

3.2.3 Input Data Lowongan..............................................................................................11

i

Page 3: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.2.4 Register User............................................................................................................14

3.2.5 Splash Screen...........................................................................................................16

3.2.6 About.......................................................................................................................16

3.2.7 Update Data Lowongan...........................................................................................17

3.2.8 Halama Utama User.................................................................................................18

3.2.9 ListView Data Lowongan........................................................................................18

3.2.10 Dialog Update Lowongan......................................................................................20

3.3 Source Code JAVA...................................................................................................23

3.3.1 Activity Login..........................................................................................................23

3.3.2 Activity Dashboard Admin......................................................................................25

3.3.3 Activity Input Data Lowongan................................................................................26

3.3.4 Class Lowongan.......................................................................................................28

3.3.5 Class LowonganList................................................................................................29

3.3.6 Activity Register......................................................................................................30

3.3.7 Activity Show Data..................................................................................................32

3.3.8 Activity Splash.........................................................................................................32

3.3.9 Class SQLiteHelper.................................................................................................33

3.3.10 Activity Tentang....................................................................................................35

3.3.11 Activity Update Lowongan....................................................................................35

3.3.12 Class User..............................................................................................................39

3.3.13 Activity Halaman Utama User ..............................................................................39

3.4 Resource xml dan lain sebagainya..............................................................................8

3.4.1 Toolbar menu...........................................................................................................42

3.4.2 String........................................................................................................................42

3.4.3 Colors.......................................................................................................................42

3.4.4 Styles........................................................................................................................43

3.4.5 Desain Button Biru..................................................................................................43

ii

Page 4: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.4.6 Desain Button Merah...............................................................................................43

3.4.7 Desain Button Kuning.............................................................................................44

3.4.8 Desain Edit Text Form.............................................................................................44

3.4.9 Desain Splash Screen...............................................................................................44

3.4.10 Dependency build.gradle.......................................................................................44

3.5 Penjelasan Source Code............................................................................................45

3.5.1 Source Code JAVA..................................................................................................45

3.5.2 Source Code Resource XML dan lain sebagainya...................................................46

BAB IV....................................................................................................................................47

PENUTUP................................................................................................................................47

4.1 Kesimpulan.....................................................................................................................47

4.2 Saran...............................................................................................................................47

DAFTAR ISI............................................................................................................................48

iii

Page 5: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

Kata Pengantar

Dengan nama Allah yang Maha Pengasih Maha Penyayang. Segala puji bagi Allah

SWT, Tuhan yang telah menolong hamba-Nya menyelesaikan laporan ini. Tanpa

pertolongan-Nya mungkin kami tidak sanggup menyelesaikannya dengan baik.

Kami Mengucapkan terimakasih kepada semua pihak yang terlibat dalam pembuatan

makalah ini.

Kami juga meminta maaf kepada pembaca jika masih terdapat kekurangan dalam

makalah ini, karena kami juga masih belajar dalam membuat laporan seperti ini.

Walaupun masih ada kekurangannya kami berharap laporan ini dapat memberikan

wawasan yang lebih luas kepada pembaca. Selanjutnya kami berharap semoga makalah ini

bermanfaat.

Purwokerto, 01 Agustus 2018

Ketua Kelompok 5

Charir Maulana Achsan

NIM : 16.11.0217

iv

Page 6: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

BAB I

PENDAHULUAN1.1 LATAR BELAKANG

Pekerjaan merupakan hal yang paling utama karena berpengaruh langsung terhadap

kelangsungan hidup seseorang. Pekerjaan merupakan sarana dalam pencarian sumber

kehidupan manusia untuk meningkatkan taraf kehidupannya. Ketersediaan lowongan

pekerjaan merupakan masalah yang selalu diperhatikan secara intensif oleh setiap orang. Hal

ini disebabkan oleh ketidakseimbangan lowongan pekerjaan dengan banyaknya calon pekerja

yang dapat berdampak buruk. Salah satu dampak buruk tersebut adalah pengangguran yang

merajalalela. Perkembangan teknologi khususnya internet membentuk pola masyarakat baru

yang butuh akan informasi yang cepat serta real time. Oleh karena itu dibutuhkan device

yang bisa memenuhi akan kebutuhan itu, salah satunya yaitu smartphone android. Kenaikan

pengguna smartphone ini juga mendorong para developer aplikasi membuat aplikasi versi

mobile. Salah satunya aplikasi LOKERKITA. LOKERKITA adalah sebuah aplikasi yang

menyajikan informasi tentang lowongan pekerjaan pada smartphone android sehingga

memberikan kemudahan bagi user dalam mencari informasi melalui smartphone android.

Dengan adanya aplikasi LOKERKITA pada platform Android ini menjadi alternatif bagi

masyarakat untuk melakukan pencarian informasi lowongan pekerjaan kapanpun dan

dimanapun berada hanya dengan memanfaatkan media smartphone Android.

1.2 RUMUSAN MASALAH

Adapun rumusan masalah dalam tugas akhir ini adalah sebagai berikut:

a) Bagaimana menganalisa kebutuhan sistem pada sebuah aplikasi lowongan pekerjaan pada

platform Android?

b) Bagaimana mendesain user interface pada sebuah aplikasi lowongan pekerjaan?

c) Bagaimana melakukan pengujian aplikasi lowongan pekerjaan pada platform Android?

1 | P a g e

Page 7: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

1.3 BATASAN MASALAH

Agar dalam pengerjaan tugas akhir ini bisa terfokus maka ditentukan

batasan masalah diantaranya sebagai berikut :

a) Program ini merupakan sebuah aplikasi tentang penyedia informasi lowongan pekerjaaan.

b) Aplikasi yang dirancang hanya berhubungan dengan lowongan pekerjaan.

c) Aplikasi ini hanya menampilkan dan memberi informasi mengenai lowongan pekerjaan.

d) Aplikasi berjalan pada mobile device yang menggunakan sistem operasiAndroid minimal

versi 4.4 KitKat

e) Aplikasi ini menggunakan Firebase realtime-database untuk databasenya.

1.4 TUJUAN PENELITIAN

Dalam penelitian ini terdapat beberapa tujuan diantaranya adalah sebagai berikut:

a) Dapat menganalisa kebutuhan sistem pada sebuah aplikasi lowongan pekerjaan pada

platform android.

b) Dapat mendesain user interface pada sebuah aplikasi lowongan pekerjaan yang user

friendly sehingga mudah dimengerti dan dipahami oleh user.

c) Melakukan pengujian terhadap aplikasi lowongan pekerjaan agar dapat mengetahui

kekurangan atau error pada aplikasi

2 | P a g e

Page 8: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

BAB II

LANDASAN TEORI

2.1 Penertian Android

Android merupakan sistem operasi yang digunakan untuk perangkat mobile berbasis Linux.

Pada awalnya sistem operasi ini dikembangkan oleh Android.Inc, yang kemudian dibeli oleh

Google pada tahun 2005. Android mengembangkan usaha pada tahun 2007 dibentuklah Open

Handset Alliance (OHA), sebuah konsorsium dari beberapa perusahaan, yaitu Texas

Instrument, Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group,

Motorola, Nvidia, Qualcom, Samsung Electronics, Sprint Nextel, dan T-Mobile dengan

tujuan untuk mengembangkan standar terbuka untuk perangkat mobile Smartphone.

Pada tanggal 9 Desember 2008 , ada 14 anggota baru yang akan bergabung di dalam proyek

Android, termasuk Packet Video, ARM Holdings, Atheros Communications, Asustek

Computer INC, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan VodaFone Group

Plc (Hermawan, 2010).

2.2 Pengertian Firebase

Firebase adalah peyedia layanan realtime database dan backend sebagai layanan. Suati

aplikasi yang memungkinkan pengembang membuat API untuk disngkronisasikan untuk

client yang berbeda – beda dan disimpan pada cloud-nya Firebase. Firebase memiliki banyak

library yang memungkinkan untuk mengintegrasikan layanan ini dengan Android, Ios,

Javacript, Java, Objective-C dan Node.JS . Database Firebase juga bersifat bisa diakses lewat

REST API. REST API tersebut menggunakan protokol Server-Sent Event dengan membuat

koneksi HTTP untuk menerima push notification dari server. Pengembang menggunakan

REST API untuk post data yang selanjutnya Firebase client library yang sudah diterapkan

pada aplikasi yang dibangun yang akan mengambil data secara real- time[28].

Pengembang juga dapat menggunakan database ini untuk mengamankan data menggunakan server Firebase dengan rules yang ada. Untuk hosting file Firebase menyediakan hosting untuk static file dengan fasilitas CND dan SNL.

3 | P a g e

Page 9: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

Pada tampilan ini user maupun admin dapat login ke aplikasi lokerkita. Jika user baru ingin login maka harus register terlebih dahulu

Pada tampilan ini user baru dapat mengisi form pendaftaran, user baru dapat mengisikan username,email, dan password

BAB III

PEMBAHASAN

3.1 User Interface Aplikasi LOKERKITA

3.1.2. Tampilan Login

3.1.3 Tampilan Register

4 | P a g e

Page 10: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

Pada tampilan ini admin dapat melakukan berbagai aksi/perintah untuk mengelola data seperti logout, menambah data,edit data, delete data dan tentu saja melihat data.

Pada tampilan ini admin dapat menambhakan data lowongan sesuai form yang sudah ada

3.1.4. Tampilan Dashboard Admin

3.1.5 Tampilan Input Data Lowongan

5 | P a g e

Page 11: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

Pada tampilan ini admin dapat mengedit atau menghapus data dengan cara long press pada listview data lowongan

Pada tampilan yang berbentuk custom dialog ini admin dapat mengedit atau menghapus data

3.1.6 Tampilan Lihat Data

3.1.7 Tampilan Edit/Delete Data

6 | P a g e

Page 12: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

Pada tampilan ini user yang baru login akan dapat melihat semua lowongan yang telah ada dan disini juga ada menu toolbar dengan pilihan logout ataupun keluar dari aplikasi.

Pada tampilan ini terdapat informasi tentang aplikasi yang dibuat dan tujuan dibuatnya aplikasi ini

3.1.8 Tampilan Halaman Utama User

3.1.9 Tampilan About

7 | P a g e

Page 13: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.2 Source Code Aplikasi LOKERKITA (User Interface XML)

3.2.1 Source Code Tampilan Login (activity_login.xml)

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/backgroundcolor" android:scrollbars="none" android:fitsSystemWindows="true">

<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginLeft="16dp" android:layout_marginRight="16dp" android:orientation="vertical">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical">

<Space android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:text="prev" />

<Space android:text="Hi its working" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" />

<Button android:id="@+id/btnabout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:drawableLeft="@drawable/aboutbutton" android:drawablePadding="6dp" android:layout_marginTop="8dp" android:onClick="btnAbout" android:background="@drawable/button_biru" android:text="ABOUT" android:textColor="@android:color/white" />

</LinearLayout>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="40sp" android:textColor="@color/white" android:textStyle="bold" android:drawableLeft="@drawable/logolokerkita" android:gravity="center" android:drawablePadding="8dp" android:text="LOKERKITA Login"/>

<EditText android:id="@+id/editTextEmail" android:layout_width="match_parent"

8 | P a g e

Page 14: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:layout_height="wrap_content" android:hint="@string/email" android:layout_marginTop="15dp" android:textColor="@color/white" android:textColorHint="@color/white" android:drawableLeft="@drawable/emailedittext" android:drawablePadding="6dp" android:background="@drawable/input_form" android:inputType="textEmailAddress" />

<EditText android:id="@+id/editTextPassword" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/password" android:textColor="@color/white" android:textColorHint="@color/white" android:drawableLeft="@drawable/passedittext" android:drawablePadding="6dp" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:inputType="textPassword" />

<LinearLayout android:layout_width="fill_parent" android:id="@+id/linearLayout1" android:layout_height="fill_parent"> <Button android:id="@+id/buttonLogin" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:drawableLeft="@drawable/loginadmin" android:background="@drawable/button_kuning" android:gravity="center" android:text="LOGIN ADMIN" android:textColor="@color/white" />

<Button android:id="@+id/buttonLoginuser" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:background="@drawable/button_merah" android:drawableLeft="@drawable/loginuser" android:gravity="center" android:text="LOGIN USER" android:textColor="@color/white" /> </LinearLayout>

<Button android:id="@+id/btnregister" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:drawableLeft="@drawable/registerbutton" android:layout_marginTop="8dp" android:onClick="btnRegister" android:background="@drawable/button_biru" android:text="REGISTER" android:textColor="@android:color/white" />

</LinearLayout>

9 | P a g e

Page 15: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

</ScrollView>

3.2.2 Tampilan Dashboard Admin (activity_dashboard.xml)

<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scroll" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/backgroundcolor" android:fitsSystemWindows="true">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"

>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="30sp" android:textColor="@color/white" android:textStyle="bold" android:layout_marginTop="130dp" android:drawableLeft="@drawable/dashboard" android:drawablePadding="8dp" android:text="DASHBOARD"/>

<Button android:id="@+id/buttontambah" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:background="@drawable/button_merah" android:text="TAMBAHKAN DATA" android:drawableLeft="@drawable/addbutton" android:onClick="btnTambahData" android:textColor="@android:color/white" />

<Button android:id="@+id/buttonlihat" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:background="@drawable/button_biru" android:drawableLeft="@drawable/openbutton" android:text="LIHAT,UPDATE DAN DELETE DATA" android:onClick="btnViewData" android:textColor="@android:color/white" />

<Button android:id="@+id/buttonlogout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:background="@drawable/button_kuning"

10 | P a g e

Page 16: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:drawableLeft="@drawable/logoutbutton" android:text="LOGOUT" android:onClick="btnLogout" android:textColor="@android:color/white" /> </LinearLayout>

</ScrollView>

3.2.3 Tampilan Input Data Lowongan (activity_input.xml)

<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/scroll"android:layout_width="match_parent"android:layout_height="match_parent" android:scrollbars="none" android:background="@drawable/backgroundcolor" android:fitsSystemWindows="true">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="5dp"

>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="30sp" android:textColor="@color/white" android:drawableLeft="@drawable/input_lowongan" android:drawablePadding="8dp" android:textStyle="bold" android:text="INPUT LOWONGAN"/>

<EditText android:id="@+id/nama_lowongan" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:textColor="@color/white" android:maxLength="250" android:inputType="textFilter" android:textColorHint="@color/white" android:background="@drawable/input_form" android:hint="NAMA LOWONGAN"/>

<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_weight="1" android:id="@+id/deskipsi" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white"

11 | P a g e

Page 17: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textMultiLine" android:background="@drawable/input_form" android:hint="DESKRIPSI"/> <Button android:id="@+id/resetdeskripsi" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:layout_marginLeft="3dp" android:gravity="center" android:textColor="@color/white" android:background="@drawable/button_merah" android:layout_width="wrap_content" android:text="RESET" /> </LinearLayout>

<EditText android:id="@+id/email" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textEmailAddress" android:background="@drawable/input_form" android:hint="EMAIL"/>

<EditText android:id="@+id/alamat" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textMultiLine" android:background="@drawable/input_form" android:hint="ALAMAT"/>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left" android:layout_marginTop="15dp" android:textSize="20sp" android:textColor="@color/white" android:textStyle="bold" android:text="PERSYARATAN : "/>

<EditText android:id="@+id/pendidikan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="PENDIDIKAN SMA/SMK/S1/S2/S3"/>

<EditText android:id="@+id/jurusan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="JURUSAN (TI/SI DLL.)"/>

12 | P a g e

Page 18: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

<Spinner android:id="@+id/spinner_jenkel" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:entries="@array/jenkel"/>

<EditText android:id="@+id/gajih" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="GAJI"/>

<LinearLayout android:layout_width="fill_parent" android:id="@+id/linearLayout1" android:layout_height="fill_parent"> <Button android:id="@+id/buttontambah" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:drawableLeft="@drawable/addbutton" android:background="@drawable/button_biru" android:gravity="center" android:text="TAMBAH DATA" android:textColor="@color/white" />

<Button android:id="@+id/button_reset_form" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:background="@drawable/button_merah" android:drawableLeft="@drawable/deletebutton" android:gravity="center" android:text="RESET FORM" android:textColor="@color/white" /> </LinearLayout>

<Button android:id="@+id/btnlihatdata" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@android:color/white" android:layout_gravity="center_horizontal" android:layout_marginTop="8dp" android:layout_weight="1" android:background="@drawable/button_kuning" android:drawableLeft="@drawable/openbutton" android:text="LIHAT DATA" /></LinearLayout>

</ScrollView>

13 | P a g e

Page 19: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.2.4 Tampilan Register User (activity_register.xml)

<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/backgroundcolor" android:fitsSystemWindows="true">

<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginLeft="16dp" android:layout_marginRight="16dp" android:orientation="vertical">

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="30sp" android:textColor="@color/white" android:textStyle="bold" android:drawableLeft="@drawable/registerlogo" android:drawablePadding="8dp" android:text="REGISTER"/>

<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_weight="1" android:id="@+id/editTextUserName" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="Username"/> <Button android:id="@+id/resetUsername" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:layout_marginLeft="3dp" android:gravity="center" android:onClick="clearUsername" android:textColor="@color/white" android:background="@drawable/button_merah" android:layout_width="wrap_content" android:text="RESET" /> </LinearLayout>

<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_weight="1" android:id="@+id/editTextEmail" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="E-mail"/>

14 | P a g e

Page 20: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

<Button android:id="@+id/resetEmail" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:layout_marginLeft="3dp" android:gravity="center" android:textColor="@color/white" android:onClick="clearEmail" android:background="@drawable/button_merah" android:layout_width="wrap_content" android:text="RESET" /> </LinearLayout>

<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_weight="1" android:id="@+id/editTextPassword" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textPassword" android:background="@drawable/input_form" android:hint="Password"/> <Button android:id="@+id/resetPassword" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:layout_marginLeft="3dp" android:gravity="center" android:textColor="@color/white" android:onClick="clearPassword" android:background="@drawable/button_merah" android:layout_width="wrap_content" android:text="RESET" /> </LinearLayout>

<Button android:id="@+id/buttonRegister" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@android:color/white" android:layout_gravity="center_horizontal" android:layout_marginTop="16dp" android:layout_weight="1" android:background="@drawable/button_biru" android:text="@string/register" />

<TextView android:id="@+id/textViewLogin" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="16dp" android:gravity="center" android:text="@string/back_to_login" android:textColor="@android:color/white" /> </LinearLayout></ScrollView>

15 | P a g e

Page 21: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.2.5 Tampilan Splash Screen (activity_splash.xml)

<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/colorPrimary" tools:context=".splash">

<ImageView android:id="@+id/imageView" android:layout_width="202dp" android:layout_height="190dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.333" app:srcCompat="@drawable/splash" />

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="LOKERKITA" android:textColor="@color/white" android:textSize="30sp" android:textStyle="bold" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.502" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.691" />

</android.support.constraint.ConstraintLayout>

3.2.6 Tampilan About (activity_tentang.xml)

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:background="@drawable/backgroundcolor" android:layout_height="wrap_content">

<Space android:layout_width="match_parent" android:layout_height="50dp" />

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="40dp" android:drawableLeft="@drawable/logolokerkita" android:drawablePadding="8dp" android:text="LOKERKITA" android:gravity="center" android:textColor="@color/white" android:textStyle="bold"/>

<Space

16 | P a g e

Page 22: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:layout_width="match_parent" android:layout_height="30dp" />

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="16dp" android:layout_marginTop="20dp" android:layout_marginRight="16dp" android:textColor="@color/white" android:gravity="center_horizontal" android:text="@string/kata_about"/>

<Space android:layout_width="match_parent" android:layout_height="50dp" />

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:textSize="30sp" android:textColor="@color/white" android:textStyle="bold" android:text="KELOMPOK 5"/>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:drawablePadding="8dp" android:gravity="center" android:text="PEMROGRAMAN MOBILE 1" android:textColor="@color/white" android:textSize="25dp" android:textStyle="bold" />

</LinearLayout>

3.2.7 Tampilan Update Data (activity_update.xml)

<?xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="none" tools:context=".update">

<ListView android:id="@+id/list_lowongan" android:layout_width="match_parent" android:scrollbars="none" android:layout_height="match_parent" android:padding="10dp" />

</android.support.design.widget.CoordinatorLayout>

17 | P a g e

Page 23: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.2.8 Tampilan Halaman Utama User (activity_utama.xml)

<?xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".utama">

<android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay">

<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>

<android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" app:srcCompat="@android:drawable/ic_dialog_email" />

<ListView android:layout_marginTop="50dp" android:scrollbars="none" android:id="@+id/list_lowongan" android:padding="10dp" android:layout_width="match_parent" android:layout_height="wrap_content" />

</android.support.design.widget.CoordinatorLayout>

3.2.9 Tampilan listview data lowongan (showdata_layout.xml)

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/android_list_view_tutorial_with_example" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:padding="7dp">

<ImageView android:id="@+id/listview_image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/logolokerkitalistview" android:contentDescription="@string/app_name" android:padding="10dp" />

<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"

18 | P a g e

Page 24: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:orientation="vertical" android:padding="7dp">

<TextView android:id="@+id/shownama" android:textAppearance="@style/TextAppearance.AppCompat.Large" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textStyle="bold" android:text="DESKRIPSI :" />

<TextView android:id="@+id/showdeskripsi" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<TextView android:id="@+id/showemail" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<TextView android:id="@+id/showalamat" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<View android:layout_width="fill_parent" android:layout_height="5dp"> </View>

<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@android:color/darker_gray" />

<View android:layout_width="fill_parent" android:layout_height="5dp"> </View>

<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textStyle="bold" android:text="PERSYARATAN :" />

<TextView android:id="@+id/showpendidikan" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<TextView android:id="@+id/showjurusan" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

19 | P a g e

Page 25: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

<TextView android:id="@+id/showjenkel" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />

<TextView android:id="@+id/showgaji" android:textSize="15dp" android:textStyle="bold" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" /> </LinearLayout></LinearLayout>

3.2.10 Tampilan custom dialog update lowongan (update_layout.xml)

<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scroll" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/backgroundcolor" android:fitsSystemWindows="true">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"

>

<TextView android:id="@+id/nama_lowongan_update" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:gravity="center" android:textSize="25sp" android:textColor="@color/white" android:drawablePadding="8dp" android:textStyle="bold" android:text="EDIT/DELETE LOWONGAN"/>

<EditText android:id="@+id/editTextNamaLowonganUpdate" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:textColor="@color/white" android:maxLength="250" android:inputType="textFilter" android:textColorHint="@color/white" android:background="@drawable/input_form" android:hint="NAMA LOWONGAN"/>

<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent">

20 | P a g e

Page 26: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

<EditText android:layout_weight="1" android:id="@+id/editTextDeskripsi" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textMultiLine" android:background="@drawable/input_form" android:hint="DESKRIPSI"/> <Button android:id="@+id/resetdeskripsi" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:layout_marginLeft="3dp" android:gravity="center" android:textColor="@color/white" android:background="@drawable/button_merah" android:layout_width="wrap_content" android:text="RESET" /> </LinearLayout>

<EditText android:id="@+id/editTextEmailLowongan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textEmailAddress" android:background="@drawable/input_form" android:hint="EMAIL"/>

<EditText android:id="@+id/editTextAlamatLowongan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:inputType="textMultiLine" android:background="@drawable/input_form" android:hint="ALAMAT"/>

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left" android:layout_marginTop="15dp" android:textSize="20sp" android:textColor="@color/white" android:textStyle="bold" android:text="PERSYARATAN : "/>

<EditText android:id="@+id/editTextPendidikanLowongan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="PENDIDIKAN SMA/SMK/S1/S2/S3"/>

<EditText android:id="@+id/editTextJurusanLowongan" android:layout_width="match_parent" android:layout_height="wrap_content"

21 | P a g e

Page 27: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="JURUSAN (TI/SI DLL.)"/>

<Spinner android:id="@+id/spinner_jenkel_update" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:entries="@array/jenkel"/>

<EditText android:id="@+id/editTextGajiLowongan" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="@color/white" android:textColorHint="@color/white" android:layout_marginTop="8dp" android:background="@drawable/input_form" android:hint="GAJI"/>

<LinearLayout android:layout_width="fill_parent" android:id="@+id/linearLayout1" android:layout_height="fill_parent"> <Button android:id="@+id/buttonupdate" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:background="@drawable/button_biru" android:drawableLeft="@drawable/updatebutton" android:gravity="center" android:text="UPDATE DATA" android:textColor="@color/white" />

<Button android:id="@+id/button_reset_form" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="3dp" android:layout_marginTop="10dp" android:layout_weight="1" android:width="0dp" android:background="@drawable/button_kuning" android:drawableLeft="@drawable/deletebutton" android:gravity="center" android:text="RESET FORM" android:textColor="@color/white" /> </LinearLayout> <Button android:id="@+id/buttondelete" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:background="@drawable/button_merah" android:drawableLeft="@drawable/deletebutton" android:text="DELETE DATA" android:textColor="@android:color/white" /> </LinearLayout>

</ScrollView>

22 | P a g e

Page 28: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3 Source Code Aplikasi LOKERKITA (Java)

3.3.1. Activity Login (LoginActivity.java)

package com.example.asus.lokerkita;

import android.content.Intent;import android.os.Bundle;import android.support.design.widget.Snackbar;import android.support.design.widget.TextInputLayout;import android.support.v7.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.text.Html;import android.text.Spanned;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;

import static android.text.Html.fromHtml;

public class LoginActivity extends AppCompatActivity {

//Declaration EditTexts EditText editTextEmail; EditText editTextPassword;

//Declaration Button Button buttonLogin; Button buttonLoginuser;

// Declaration SqliteHelper SqliteHelper sqliteHelper;

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); sqliteHelper = new SqliteHelper(this); initViews();

buttonLoginuser.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {

//mengecek user input sudah benar atau belum if (validate()) {

String Email = editTextEmail.getText().toString(); String Password = editTextPassword.getText().toString();

User currentUser = sqliteHelper.Authenticate(new User(null, null, Email, Password));

if (currentUser != null) { Snackbar.make(buttonLoginuser, "Successfully Logged in!", Snackbar.LENGTH_LONG).show();

//jika user berhasil login maka munculkan activity user Intent intent=new Intent(LoginActivity.this,utama.class); startActivity(intent); finish(); } else {

//jika user failed login Snackbar.make(buttonLoginuser, "Failed to log in , please

23 | P a g e

Page 29: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

try again", Snackbar.LENGTH_LONG).show(); } } } });

editTextEmail = (EditText) findViewById(R.id.editTextEmail); editTextPassword = (EditText) findViewById(R.id.editTextPassword); buttonLogin = (Button)findViewById(R.id.buttonLogin);

buttonLogin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {

String emailKey = editTextEmail.getText().toString(); String passwordKey = editTextPassword.getText().toString();

if (emailKey.equals("[email protected]") && passwordKey.equals("lokerkita12345")){

Toast.makeText(getApplicationContext(), "LOGIN SUKSES", Toast.LENGTH_SHORT).show(); Intent intent = new Intent(LoginActivity.this, dashboard.class); LoginActivity.this.startActivity(intent); finish(); }else {

AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this); builder.setMessage("Username atau Password Anda salah!") .setNegativeButton("Retry", null).create().show(); } }

}); }

public void btnRegister(View v){ Intent intent = new Intent(LoginActivity.this, RegisterActivity.class); startActivity(intent); }

public void btnAbout(View v){ Intent intent = new Intent(LoginActivity.this, tentang.class); startActivity(intent); }

private void initViews() { editTextEmail = (EditText) findViewById(R.id.editTextEmail); editTextPassword = (EditText) findViewById(R.id.editTextPassword); buttonLogin = (Button) findViewById(R.id.buttonLogin); buttonLoginuser = (Button) findViewById(R.id.buttonLoginuser);

}

public boolean validate() { boolean valid = false;

String Email = editTextEmail.getText().toString(); String Password = editTextPassword.getText().toString();

if (!android.util.Patterns.EMAIL_ADDRESS.matcher(Email).matches()) { valid = false; Toast.makeText(this, "Masukkan e-mail yang

24 | P a g e

Page 30: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

benar",Toast.LENGTH_LONG).show(); } else { valid = true;

}

if (Password.isEmpty()) { valid = false; Toast.makeText(this, "Tolong isi password yang benar",Toast.LENGTH_LONG).show(); }

return valid; }}

3.3.2 Activity dashboard admin (dashboard.java)

package com.example.asus.lokerkita;

import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Toast;

public class dashboard extends AppCompatActivity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_dashboard); }

public void btnTambahData(View v){ Intent intent = new Intent(dashboard.this, input.class); startActivity(intent); }

public void btnViewData(View v){ Intent intent = new Intent(dashboard.this, update.class); startActivity(intent); }

public void btnLogout(View v){ Intent intent = new Intent(dashboard.this, LoginActivity.class); startActivity(intent); Toast.makeText(getApplicationContext(), "LOGOUT SUKSES", Toast.LENGTH_SHORT).show(); onBackPressed(); }}

25 | P a g e

Page 31: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.3 Activity Input Data Lowongan (input.java)

package com.example.asus.lokerkita;

import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.text.TextUtils;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Spinner;import android.widget.Toast;

import com.google.firebase.database.DatabaseReference;import com.google.firebase.database.FirebaseDatabase;

public class input extends AppCompatActivity {

EditText editTextNama; EditText editTextDeskripsi; EditText editTextEmail; EditText editTextAlamat; EditText editTextPendidikan; EditText editTextJuruan; EditText editTextGaji; Spinner spinJenkel; Button tambahLowongan; Button resetDeskripsi; Button resetAllForm; Button lihatData;

DatabaseReference db_lowongan;

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_input);

db_lowongan = FirebaseDatabase.getInstance().getReference("lowongan"); editTextNama = (EditText) findViewById(R.id.nama_lowongan); editTextDeskripsi = (EditText) findViewById(R.id.deskipsi); editTextAlamat = (EditText) findViewById(R.id.alamat); editTextEmail = (EditText) findViewById(R.id.email); editTextPendidikan = (EditText) findViewById(R.id.pendidikan); editTextJuruan = (EditText) findViewById(R.id.jurusan); editTextGaji = (EditText) findViewById(R.id.gajih);

spinJenkel = (Spinner) findViewById(R.id.spinner_jenkel); tambahLowongan = (Button) findViewById(R.id.buttontambah); resetDeskripsi = (Button) findViewById(R.id.resetdeskripsi) ; resetAllForm = (Button) findViewById(R.id.button_reset_form); lihatData = (Button) findViewById(R.id.btnlihatdata);

tambahLowongan.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {

addlowongan();

} });

resetDeskripsi.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearDeskripsi();

26 | P a g e

Page 32: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

} });

resetAllForm.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearAllForm(); } });

lihatData.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(input.this, update.class); startActivity(intent); } }); } private void clearAllForm(){ editTextNama.getText().clear(); editTextDeskripsi.getText().clear(); editTextEmail.getText().clear(); editTextAlamat.getText().clear(); editTextPendidikan.getText().clear(); editTextJuruan.getText().clear(); spinJenkel.setSelection(0); editTextGaji.getText().clear();

}

private void clearDeskripsi(){ editTextDeskripsi.getText().clear(); }

private void addlowongan(){ String nama = editTextNama.getText().toString().trim(); String alamat = editTextAlamat.getText().toString().trim(); String deskripsi = editTextDeskripsi.getText().toString().trim(); String email = editTextEmail.getText().toString().trim(); String tpendidikan = editTextPendidikan.getText().toString().trim(); String juruan = editTextJuruan.getText().toString().trim(); String gaji = editTextGaji.getText().toString().trim(); String jenkel = spinJenkel.getSelectedItem().toString();

if (!TextUtils.isEmpty(nama)|| !TextUtils.isEmpty(nama)|| !TextUtils.isEmpty(alamat)|| !TextUtils.isEmpty(deskripsi)|| !TextUtils.isEmpty(email)|| !TextUtils.isEmpty(tpendidikan)|| !TextUtils.isEmpty(juruan)|| !TextUtils.isEmpty(gaji) ){

String id = db_lowongan.push().getKey();

Lowongan lowongan = new Lowongan(id,nama,deskripsi,email,alamat,tpendidikan,juruan,jenkel,gaji); db_lowongan.child(id).setValue(lowongan); Toast.makeText(this, "Data Lowongan Telah Di Inputkan", Toast.LENGTH_SHORT).show(); }else { Toast.makeText(this, "Lengkapi Semua Data", Toast.LENGTH_SHORT).show(); } }}

27 | P a g e

Page 33: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.4 Class Lowongan (Lowongan.java)

package com.example.asus.lokerkita;

public class Lowongan { String idlowongan; String nama; String alamat; String deskripsi; String email; String tpendidikan; String juruan; String gaji; String jenkel ; public Lowongan(String idlowongan, String nama, String deskripsi, String email, String alamat, String tpendidikan, String juruan, String jenkel, String gaji) { this.idlowongan = idlowongan; this.nama = nama; this.alamat = alamat; this.deskripsi = deskripsi; this.email = email; this.tpendidikan = tpendidikan; this.juruan = juruan; this.gaji = gaji; this.jenkel = jenkel; }

public String getIdlowongan() { return idlowongan; }

public String getNama() { return nama; }

public String getAlamat() { return alamat; }

public String getDeskripsi() { return deskripsi; }

public String getEmail() { return email; }

public String getTpendidikan() { return tpendidikan; }

public String getJuruan() { return juruan; }

public String getGaji() { return gaji; }

public String getJenkel() { return jenkel; }

public Lowongan (){ } ;}

28 | P a g e

Page 34: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.5 Class LowonganList (LowonganList.java)

package com.example.asus.lokerkita;

import android.app.Activity;import android.support.annotation.NonNull;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ArrayAdapter;import android.widget.TextView;

import java.util.List;

public class LowonganList extends ArrayAdapter<Lowongan> {

private Activity context; private List<Lowongan> lowonganList;

public LowonganList(Activity context, List<Lowongan> lowonganList) {

super(context, R.layout.showdata_layout, lowonganList); this.context = context; this.lowonganList = lowonganList; }

@NonNull @Override public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater inflater = context.getLayoutInflater();

View listViewItem = inflater.inflate(R.layout.showdata_layout, null, true);

TextView textViewNama = (TextView) listViewItem.findViewById(R.id.shownama); TextView textViewDeskripsi = (TextView) listViewItem.findViewById(R.id.showdeskripsi); TextView textViewGaji = (TextView) listViewItem.findViewById(R.id.showgaji); TextView textViewEmail = (TextView) listViewItem.findViewById(R.id.showemail); TextView textViewJenkel = (TextView) listViewItem.findViewById(R.id.showjenkel); TextView textViewJurusan = (TextView) listViewItem.findViewById(R.id.showjurusan); TextView textViewAlamat = (TextView) listViewItem.findViewById(R.id.showalamat); TextView textViewPendidikan = (TextView) listViewItem.findViewById(R.id.showpendidikan);

Lowongan lowongan = lowonganList.get(position);

textViewNama.setText(lowongan.getNama()); textViewDeskripsi.setText(lowongan.getDeskripsi().toString()); textViewGaji.setText("Gaji Rp. "+lowongan.getGaji()); textViewAlamat.setText("Alamat : " +lowongan.getAlamat()); textViewJenkel.setText("Jenis Kelamin : " +lowongan.getJenkel()); textViewJurusan.setText("Jurusan : " +lowongan.getJuruan()); textViewEmail.setText("Email : " +lowongan.getEmail()); textViewPendidikan.setText("Minimal Pendidikan : " +lowongan.getTpendidikan());

return listViewItem; }}

29 | P a g e

Page 35: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.6 Activity Register (RegisterActivity.java)

package com.example.asus.lokerkita;

import android.os.Bundle;import android.os.Handler;import android.support.annotation.Nullable;import android.support.design.widget.Snackbar;import android.support.design.widget.TextInputLayout;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;

public class RegisterActivity extends AppCompatActivity {

//Declaration EditTexts EditText editTextUserName; EditText editTextEmail; EditText editTextPassword;

//Declaration Button Button buttonRegister; Button resetUsername; Button resetEmail; Button resetPassword;

//Declaration SqliteHelper SqliteHelper sqliteHelper;

@Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); sqliteHelper = new SqliteHelper(this); initTextViewLogin(); initViews(); buttonRegister.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (validate()) { String UserName = editTextUserName.getText().toString(); String Email = editTextEmail.getText().toString(); String Password = editTextPassword.getText().toString();

//mengecek di database apakah ada user yang menggunakan email ini if (!sqliteHelper.isEmailExists(Email)) {

//jika email tidak ada maka tambahkan user ke database sqliteHelper.addUser(new User(null, UserName, Email, Password)); Toast.makeText(RegisterActivity.this, "User created succesfully", Toast.LENGTH_LONG).show(); new Handler().postDelayed(new Runnable() { @Override public void run() { finish(); } }, Snackbar.LENGTH_LONG); }else {

//Jika email telah digunakan oleh user lain maka tampilkan peringatan Toast.makeText(RegisterActivity.this, "User already exists with same email", Toast.LENGTH_LONG).show();

30 | P a g e

Page 36: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

} } } });

resetUsername.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearUsername(); } });

resetEmail.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearEmail(); } });

resetPassword.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearPassword(); } }); }

private void clearUsername(){ editTextUserName.getText().clear(); }

private void clearEmail(){ editTextEmail.getText().clear(); }

private void clearPassword(){ editTextPassword.getText().clear(); }

//membuat onclick listener pada textview private void initTextViewLogin() { TextView textViewLogin = (TextView) findViewById(R.id.textViewLogin); textViewLogin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } }); }

private void initViews() { editTextEmail = (EditText) findViewById(R.id.editTextEmail); editTextPassword = (EditText) findViewById(R.id.editTextPassword); editTextUserName = (EditText) findViewById(R.id.editTextUserName); buttonRegister = (Button) findViewById(R.id.buttonRegister); resetUsername = (Button) findViewById(R.id.resetUsername); resetEmail = (Button) findViewById(R.id.resetEmail); resetPassword = (Button) findViewById(R.id.resetPassword);

}

//method untuk melakukan validasi public boolean validate() { boolean valid = false;

String UserName = editTextUserName.getText().toString(); String Email = editTextEmail.getText().toString();

31 | P a g e

Page 37: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

String Password = editTextPassword.getText().toString();

if (UserName.isEmpty()) { valid = false; Toast.makeText(this, "masukkan username",Toast.LENGTH_LONG).show(); }

if (!android.util.Patterns.EMAIL_ADDRESS.matcher(Email).matches()) { valid = false; Toast.makeText(this, "Masukkan e-mail yang benar",Toast.LENGTH_LONG).show(); } else { valid = true; }

if (Password.isEmpty()) { valid = false; Toast.makeText(this, "Tolong isi password yang benar",Toast.LENGTH_LONG).show(); } return valid; }}

3.3.7 Activity showdata (showdata.java)

package com.example.asus.lokerkita;

import android.support.v7.app.AppCompatActivity;import android.os.Bundle;

public class showdata extends AppCompatActivity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.showdata_layout); }}

3.3.8 Activity splash

package com.example.asus.lokerkita;

import android.content.Intent;import android.os.Handler;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Window;

public class splash extends AppCompatActivity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash);

Intent intent = new Intent(this, LoginActivity.class); startActivity(intent); finish(); }}

32 | P a g e

Page 38: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.9 Class SQLiteHelper (SQLiteHelper.java)

package com.example.asus.lokerkita;

import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;

public class SqliteHelper extends SQLiteOpenHelper {

//DATABASE NAME public static final String DATABASE_NAME = "loopwiki.com";

//DATABASE VERSION public static final int DATABASE_VERSION = 1;

//TABLE NAME public static final String TABLE_USERS = "users";

//TABLE USERS COLUMNS //ID COLUMN @primaryKey public static final String KEY_ID = "id";

//COLUMN user name public static final String KEY_USER_NAME = "username";

//COLUMN email public static final String KEY_EMAIL = "email";

//COLUMN password public static final String KEY_PASSWORD = "password";

//SQL for creating users table public static final String SQL_TABLE_USERS = " CREATE TABLE " + TABLE_USERS + " ( " + KEY_ID + " INTEGER PRIMARY KEY, " + KEY_USER_NAME + " TEXT, " + KEY_EMAIL + " TEXT, " + KEY_PASSWORD + " TEXT" + " ) "; public SqliteHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); }

@Override public void onCreate(SQLiteDatabase sqLiteDatabase) { //membuat table ketika oncreate method dipanggil sqLiteDatabase.execSQL(SQL_TABLE_USERS);

}

@Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { //drop table to create new one if database version updated sqLiteDatabase.execSQL(" DROP TABLE IF EXISTS " + TABLE_USERS); }

//using this method we can add users to user table public void addUser(User user) {

//get writable database SQLiteDatabase db = this.getWritableDatabase();

//create content values to insert ContentValues values = new ContentValues();

33 | P a g e

Page 39: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

//Put username in @values values.put(KEY_USER_NAME, user.userName);

//Put email in @values values.put(KEY_EMAIL, user.email);

//Put password in @values values.put(KEY_PASSWORD, user.password);

// insert row long todo_id = db.insert(TABLE_USERS, null, values); }

public User Authenticate(User user) { SQLiteDatabase db = this.getReadableDatabase(); Cursor cursor = db.query(TABLE_USERS,// Selecting Table new String[]{KEY_ID, KEY_USER_NAME, KEY_EMAIL, KEY_PASSWORD},//Selecting columns want to query KEY_EMAIL + "=?", new String[]{user.email},//Where clause null, null, null);

if (cursor != null && cursor.moveToFirst()) { User user1 = new User(cursor.getString(0), cursor.getString(1), cursor.getString(2), cursor.getString(3));

//mengecek password apakah ada yang sama if (user.password.equalsIgnoreCase(user1.password)) { return user1; } } //jika password user tidak sama atau tidak ada record dengan email maka return false return null; }

public boolean isEmailExists(String email) { SQLiteDatabase db = this.getReadableDatabase(); Cursor cursor = db.query(TABLE_USERS,// memilih Table new String[]{KEY_ID, KEY_USER_NAME, KEY_EMAIL, KEY_PASSWORD},//memilih kolom query KEY_EMAIL + "=?", new String[]{email},//Where clause null, null, null);

if (cursor != null && cursor.moveToFirst()) {

return true; } //jika email tidak ada return false return false; }}

34 | P a g e

Page 40: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.10 Activity Tentang (tentang.java)

package com.example.asus.lokerkita;

import android.support.v7.app.AppCompatActivity;import android.os.Bundle;

public class tentang extends AppCompatActivity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tentang); getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setLogo(R.drawable.about); getSupportActionBar().setDisplayUseLogoEnabled(true); }}

3.3.11 Activity Update Lowongan (update.java)

package com.example.asus.lokerkita;

import android.support.v7.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;

import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.support.design.widget.FloatingActionButton;import android.support.design.widget.Snackbar;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.text.TextUtils;import android.view.LayoutInflater;import android.view.View;import android.view.Menu;import android.view.MenuItem;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.ListView;import android.widget.Spinner;import android.widget.TextView;import android.widget.Toast;

import com.google.firebase.database.DataSnapshot;import com.google.firebase.database.DatabaseError;import com.google.firebase.database.DatabaseReference;import com.google.firebase.database.FirebaseDatabase;import com.google.firebase.database.ValueEventListener;

import java.util.ArrayList;import java.util.List;

public class update extends AppCompatActivity {

DatabaseReference db_lowongan;

ListView listViewLowongan;

List<Lowongan> lowonganList;

35 | P a g e

Page 41: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_update); getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setLogo(R.drawable.update); getSupportActionBar().setDisplayUseLogoEnabled(true);

listViewLowongan = (ListView) findViewById(R.id.list_lowongan); lowonganList = new ArrayList<>(); db_lowongan = FirebaseDatabase.getInstance().getReference("lowongan");

listViewLowongan.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {

Lowongan lowongan = lowonganList.get(position); showUpdateDialog(lowongan.getIdlowongan(), lowongan.getNama(), lowongan.getDeskripsi(), lowongan.getEmail(), lowongan.getAlamat(), lowongan.getTpendidikan(), lowongan.getJuruan(), lowongan.getJenkel(), lowongan.getGaji()); return false; } }); }

private void showUpdateDialog(final String lowonganId, String lowonganName, String lowonganDeskripsi,String lowonganemail, String lowonganalamat, String pendidikan, String jurusan, final String lowonganJenkel, String lowonganGaji){

final AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); LayoutInflater inflater = getLayoutInflater(); final View dialogView = inflater.inflate(R.layout.update_layout, null); dialogBuilder.setView(dialogView);

final EditText editTextNamaLowongan = (EditText)dialogView.findViewById(R.id.editTextNamaLowonganUpdate); final EditText editTextDeskripsiLowongan = (EditText)dialogView.findViewById(R.id.editTextDeskripsi); final EditText editTextGajiLowongan = (EditText)dialogView.findViewById(R.id.editTextGajiLowongan); final EditText editTextEmailLowongan = (EditText)dialogView.findViewById(R.id.editTextEmailLowongan); final EditText editTextJurusanLowongan = (EditText)dialogView.findViewById(R.id.editTextJurusanLowongan); final EditText editTextAlamatLowongan = (EditText)dialogView.findViewById(R.id.editTextAlamatLowongan); final EditText editTextPendidikanLowongan = (EditText)dialogView.findViewById(R.id.editTextPendidikanLowongan); final Button buttonupdate = (Button)dialogView.findViewById(R.id.buttonupdate); final Spinner spinnerJenkel = (Spinner)dialogView.findViewById(R.id.spinner_jenkel_update); final TextView textViewJudul = (TextView)dialogView.findViewById(R.id.nama_lowongan_update);

final Button buttondelete = (Button)dialogView.findViewById(R.id.buttondelete); final Button resetDeskripsi = (Button)dialogView.findViewById(R.id.resetdeskripsi); final Button resetAllForm = (Button)dialogView.findViewById(R.id.button_reset_form);

editTextNamaLowongan.setText(lowonganName); editTextDeskripsiLowongan.setText(lowonganDeskripsi); editTextAlamatLowongan.setText(lowonganalamat);

36 | P a g e

Page 42: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

editTextEmailLowongan.setText(lowonganemail); editTextJurusanLowongan.setText(jurusan); editTextPendidikanLowongan.setText(pendidikan); editTextGajiLowongan.setText(lowonganGaji); spinnerJenkel.setSelection(0);

buttonupdate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String namalowongan = editTextNamaLowongan.getText().toString().trim(); String deskripsilowongan = editTextDeskripsiLowongan.getText().toString().trim(); String gajilowongan = editTextGajiLowongan.getText().toString().trim(); String pendidikanlowongan = editTextPendidikanLowongan.getText().toString().trim(); String jurusanlowongan = editTextJurusanLowongan.getText().toString().trim(); String alamatlowongan = editTextAlamatLowongan.getText().toString().trim(); String emaillowongan = editTextEmailLowongan.getText().toString().trim(); String jenkellowongan = spinnerJenkel.getSelectedItem().toString(); if(TextUtils.isEmpty(namalowongan)){ editTextNamaLowongan.setError("nama required"); return; } updateLowongan(lowonganId, namalowongan, deskripsilowongan, emaillowongan, alamatlowongan, pendidikanlowongan, jurusanlowongan, jenkellowongan, gajilowongan);

} });

buttondelete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { deleteLowongan(lowonganId); } });

resetDeskripsi.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { editTextDeskripsiLowongan.getText().clear(); } });

resetAllForm.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { editTextNamaLowongan.getText().clear(); editTextDeskripsiLowongan.getText().clear(); editTextEmailLowongan.getText().clear(); editTextAlamatLowongan.getText().clear(); editTextPendidikanLowongan.getText().clear(); editTextJurusanLowongan.getText().clear(); spinnerJenkel.setSelection(0); editTextGajiLowongan.getText().clear(); } });

textViewJudul.setText(lowonganName); final AlertDialog alertDialog = dialogBuilder.create(); alertDialog.show(); }

37 | P a g e

Page 43: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

private void deleteLowongan(String id){ DatabaseReference drLowongan = FirebaseDatabase.getInstance().getReference("lowongan").child(id); drLowongan.removeValue(); Toast.makeText(this, "Lowongan Telah Di Delete", Toast.LENGTH_LONG).show();

}

private boolean updateLowongan(String id, String namalowongan, String deskripsilowongan, String email_lowongan, String alamat_lowongan, String pendidikan_lowongan, String jurusan_lowongan, String jenkel_lowongan, String gajilowongan){ DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("lowongan").child(id);

Lowongan lowongan = new Lowongan(id, namalowongan, deskripsilowongan, email_lowongan, alamat_lowongan, pendidikan_lowongan, jurusan_lowongan, jenkel_lowongan, gajilowongan);

databaseReference.setValue(lowongan);

Toast.makeText(this, "Lowongan Telah Di Update", Toast.LENGTH_LONG).show();

return true; } @Override protected void onStart() { super.onStart(); db_lowongan.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) {

lowonganList.clear(); for (DataSnapshot lowonganSnapshot : dataSnapshot.getChildren()) { Lowongan lowongan = lowonganSnapshot.getValue(Lowongan.class);

lowonganList.add(lowongan); }

LowonganList adapter = new LowonganList(update.this, lowonganList); listViewLowongan.setAdapter(adapter); }

@Override public void onCancelled(DatabaseError databaseError) {

} }); }}

38 | P a g e

Page 44: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.3.11 Class User

package com.example.asus.lokerkita;

public class User { public String id; public String userName; public String email; public String password;

public User(String id, String userName, String email, String password) { this.id = id; this.userName = userName; this.email = email; this.password = password; }}

3.3.12 Activity Halaman User (utama.java)

package com.example.asus.lokerkita;

import android.content.DialogInterface;import android.content.Intent;import android.net.ConnectivityManager;import android.os.Bundle;import android.os.Handler;import android.provider.Settings;import android.support.design.widget.FloatingActionButton;import android.support.design.widget.Snackbar;import android.support.v7.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.View;import android.view.Menu;import android.view.MenuItem;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.Toast;

import com.google.firebase.database.DataSnapshot;import com.google.firebase.database.DatabaseError;import com.google.firebase.database.DatabaseReference;import com.google.firebase.database.FirebaseDatabase;import com.google.firebase.database.ValueEventListener;

import java.util.ArrayList;import java.util.List;

public class utama extends AppCompatActivity {

DatabaseReference db_lowongan;

ListView listViewArtist;

List<Lowongan> lowonganList;

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_utama); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setLogo(R.drawable.home2); getSupportActionBar().setDisplayUseLogoEnabled(true);

39 | P a g e

Page 45: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

listViewArtist = (ListView) findViewById(R.id.list_lowongan); lowonganList = new ArrayList<>(); db_lowongan = FirebaseDatabase.getInstance().getReference("lowongan");

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Contact Us : [email protected]", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } });

android.net.ConnectivityManager cm = (ConnectivityManager) getSystemService(this.CONNECTIVITY_SERVICE); android.net.NetworkInfo activeNetworkInfo = cm.getActiveNetworkInfo(); if (activeNetworkInfo != null && activeNetworkInfo.isConnected()) { // Toast.makeText(utama.this, "INTERNET is Available", Toast.LENGTH_SHORT).show(); } else { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setIcon(R.drawable.nointernet); builder.setTitle("NO INTERNET"); builder.setMessage("Please check your internet connection."); builder.setPositiveButton("ENABLE INTERNET", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS); startActivity(intent);

} }); builder.show();

} } @Override protected void onStart() { super.onStart(); db_lowongan.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) {

lowonganList.clear(); for (DataSnapshot lowonganSnapshot : dataSnapshot.getChildren()) { Lowongan lowongan = lowonganSnapshot.getValue(Lowongan.class);

lowonganList.add(lowongan); }

LowonganList adapter = new LowonganList(utama.this, lowonganList); listViewArtist.setAdapter(adapter); }

@Override public void onCancelled(DatabaseError databaseError) {

} }); }

40 | P a g e

Page 46: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_utama, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId();

//noinspection SimplifiableIfStatement if (id == R.id.btnlogoutuser) { final AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("LOGOUT"); builder.setMessage("Apakah Anda Mau Logout?"); builder.setPositiveButton("YA", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(utama.this, LoginActivity.class); startActivity(intent); onBackPressed(); } });

builder.setNegativeButton("TIDAK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.show(); } if (id == R.id.btnkeluar) {

final AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("KELUAR"); builder.setMessage("Apakah Anda Mau Keluar?"); builder.setPositiveButton("YA", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish();// System.exit(0);

} });

builder.setNegativeButton("TIDAK", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss();

} }); builder.show();

} return super.onOptionsItemSelected(item); }}

41 | P a g e

Page 47: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.4 Resource xml dan lain sebagainya

3.4.1 Toolbar menu (menu_utama.xml)

<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="com.example.asus.lokerkita.utama">

<item android:id="@+id/btnlogoutuser" android:orderInCategory="100" android:title="LOGOUT" app:showAsAction="never" />

<item android:id="@+id/btnkeluar" android:orderInCategory="100" android:title="KELUAR" app:showAsAction="never" /></menu>

3.4.2 String.xml

<resources> <string name="app_name">LOKER KITA</string> <string name="action_settings">Settings</string> <string name="kata_about">LokerKita adalah sebuah aplikasi yang dibuat oleh CMA.Inc dengan tujuan agar para lulusan perguruan tinggi maupun kalangan umum dapat menemukan lowongan kerja dengan mudah</string>

<string-array name="pendidikan"> <item>SMA IPA</item> <item>SMA IPS</item> <item>SMK</item> <item>D3</item> <item>S1</item> <item>S2</item> <item>S3</item> </string-array>

<string-array name="jenkel"> <item>PILIH JENIS KELAMIN</item> <item>Pria</item> <item>Wanita</item> <item>Semua Kalangan</item> </string-array> <string name="back_to_login">Back to Login</string></resources>

3.4.3 colors.xml

<?xml version="1.0" encoding="utf-8"?><resources> <color name="colorPrimary">#00f8dc</color> <color name="colorPrimaryDark">#33c7c4</color> <color name="colorAccent">#FF4081</color> <color name="white">#ffffff</color> <color name="black">#000000</color> <color name="cyan">#00f8dc</color></resources>

42 | P a g e

Page 48: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.4.4 styles.xml

<resources>

<!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style>

<style name="AppTheme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>

<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar"> <item name="android:windowBackground">@drawable/splash_background</item> </style>

<style name="dialogtheme" parent="Theme.AppCompat.Light.Dialog.Alert"> <item name="android:background">@color/colorAccent</item> <item name="android:textColor">@color/white</item> <item name="android:maxLines">1</item> </style></resources>

3.4.5 Desain button biru (button_biru.xml)

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#37AEE4"/> <padding android:left="10dp" android:top="8dp" android:right="10dp" android:bottom="8dp"/> <corners android:radius="30dp"/></shape>

3.4.6 Desain button merah (button_merah.xml)

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/colorAccent"/> <padding android:left="16dp" android:top="8dp" android:right="16dp" android:bottom="8dp"/> <corners android:radius="30dp"/></shape>

43 | P a g e

Page 49: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.4.7 Desain button kuning (button_kuning.xml)

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#E89A0C"/> <padding android:left="16dp" android:top="8dp" android:right="16dp" android:bottom="8dp"/> <corners android:radius="30dp"/></shape>

3.4.8 Desain edittext form (input_form.xml)

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#25000000" android:background="#25000000" /> <padding android:left="16dp" android:top="8dp" android:right="16dp" android:bottom="8dp"/> <corners android:radius="20dp"/></shape>

3.4.9 Desain splash screen

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@color/colorPrimary" />

<item> <bitmap android:src="@drawable/splash" android:background="@drawable/backgroundcolor" android:gravity="center" /> </item></layer-list>

3.4.10 Dependency build.gradle

dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:design:27.1.1' implementation 'com.android.support.constraint:constraint-layout:1.1.2' implementation 'com.android.support:design:27.1.1' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' compile 'com.google.firebase:firebase-core:10.2.0' compile 'com.google.firebase:firebase-database:10.2.0'}apply plugin: 'com.google.gms.google-services'

44 | P a g e

Page 50: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

3.5 Penjelasan Source Code

3.5.1 Source Code Java

Dashboard.javaProgram java ini digunakan untuk membuat listener terhadap 3 button yang tersedia yang bisa digunakan untuk Admin dalam mengubah data-data lowongan yaitu button tambah data, button lihat,edit atau delete data dan button logout.

Input.javaProgram ini digunakan untuk menambahkan data-data lowongan, pada program ini terdapat baris kode untuk menentukan nama database yang akan dibuat pada Firebase dan menentukan id edittext maupun button yang tersedia.

LoginActivity.javaProgram ini digunakan untuk melakukan verifikasi login user dan admin dengan cara mengecek data dari database SQLite dan jika user maupun admin telah bisa login maka akan muncul Activitynya masing-masing menggunakan Intent dan juga pada activity in tersedia listener untuk 3 tombol yaitu tombol login admin,login user, dan register.

Lowongan.javaPada program ini dibuat class Lowongan yang menampung konstruktor-koonstruktor yang akan digunakan untuk menyimpan data ke database firebase.

LowonganList.javaPada program ini dibuat array adapter yang digunakan untuk menyimpan data-data dari edit text yang kemudian akan di masukkan ke database firebase.

RegisterActivity.javaProgram ini digunakan untuk user baru bisa mendaftarkan ke aplikasi dan agar bisa login untuk melihat seluruh data lowongan yang ada, pada program ini terdapat baris program untuk melakukan validasi terhadap data yang diiputkan user dan juga terdapat satu listener untuk button register.

Showdata.javaPrgram ini digunakan untuk bagian xml show_data.xml yang akan menamplkan data lowongan dalam bentuk listview.

Splash.javaProgram ini digunakan untuk menampilkan activity_splash.xml dan membuka halamn utama aplikasi dengan intent.

SqliteHelper.javaProgram digunakan untuk menentukan nama database Sqlite beserta nama-nama tabelnya dan melakukan Autentikasi ketika user akan menambahkan data seperti username,e-mail dan password.

Tentang.javaProgram ini digunakan untuk menampilkan activity_tentang.xml yang memuat informasi tentang aplikasi yang dibuat dan tujuan dibuatnya aplikasi ini.

Update.javaProgram ini digunakan untuk mengupdate dan mendelete data lowongan. Pada program ini terdapat baris program untuk menentukan nama database, menentukan id table database, menentukan semua id edit text dan ada listener untuk 4 button yaitu button update,delete,resetDeskripsi,resetForm.

45 | P a g e

Page 51: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

User.javaPada program ini terdapat class dan konstruktor yang berisi data user yang akan digunakan untuk dimasukkan ke database SQLite yaitu id,username,e-mail dan password.

Utama.javaProgram ini digunakan untuk menampilkan data lowongan dalam bentuk listview yang nantinya akan dilihat oleh user ketika sudah login terlebih dahulu. Pada program ini terdapat baris program untuk menentukan nama database firebase yang akan diambil datanya dan ada pengecekan apakah tersedia koneksi internet atau tidak.

3.5.2 Resource xml dan lain sebagainya Menu_utama.xml

Program ini digunakan untuk menambahkan button pada toolbar yaitu button logout dan button keluar.

String.xmlProgram ini digunakan untuk menaruh data string tulisan dan data string spinner jenis kelamin.

Colors.xmlProgram ini digunakan untuk mengatur pewarnaan pada aplikasi.

Styles.xmlProgram ini digunakan untuk mengatur style dari aplikasi, dialog update lowongan dan splash screen

Button_biru.xmlProgram ini digunakan untuk membuat button bewarna biru dengan bentuk rounded pada ujungnya.

Button_merah.xmlProgram ini digunakan untuk membuat button bewarna merah dengan bentuk rounded pada ujungnya.

Button_kuning.xmlProgram ini digunakan untuk membuat button bewarna kuning dengan bentuk rounded pada ujungnya.

Input_form.xmlProgram ini digunakan untuk membuat edittext bewarna transparant dengan bentuk rounded pada ujungnya.

Splash_background.xmlProgram ini digunakan untuk membuat desain splash screen dengan memasukkan logo aplikasi dan mengatur warna background.

Build.gradleProgram ini digunakan untuk menambahkan dependency yang dibutuhkan unutk mengkoneksikan aplikasi dengan database firebase dan menambahkan dependency google services..

46 | P a g e

Page 52: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

BAB IV

PENUTUP

4.1 Kesimpulan

Dari laporan proyek akhir ini maka dapat diambil kesimpulan bahwa :

1. Dengan adanya aplikasi LOKERKITA pada android untuk mencari info lowongan kerja, maka para mahasiswa yang baru lulus atau masyarakat umum akan lebih mudah dalam mencari pekerjaan karena telah tersedianya aplikasi LOKERKITA yang memuat banyak iklan penyedia lowongan kerja

2. Dengan adanya aplikasi LOKERKITA untuk mencari info lowongan pekerjaan maka para mahasiswa dan masyarakat umum akan menghemat waktu dan uang untuk sekedar memberi majalah atau koran yang memuat info lowongan kerja.

4.2 Saran

Demi pengembangan karya pada proyek akhir ini, maka saran yang dapat diberikan pada program aplikasi ini adalah :

1. Pada sisi aplikasi android, perlu ada penambahan fitur seperti penambahan user admin pada setiap perusahaan-perusahaan yang akan menginputkan data lowongan, penambahan preferensi kategori lowongan user dan lain sebagainya.

2. Pada server firebase harus ditambahkan autentikasi user dan admin agar privasi data user dan admin dari perusahaan-perusahaan dapat terjaga dengan baik.

47 | P a g e

Page 53: hirupmotekar.comhirupmotekar.com/.../2018/07/LAPORANFINALPROJEKPMO.docx · Web viewLAPORAN FINAL PROJEK PEMROGRAMAN MOBILE 1. APLIKASI PENYEDIA INFO LOWONGAN KERJA “ LOKERKITA ”

DAFTAR PUSTAKA

1. https://id.wikipedia.org/wiki/Android_(sistem_operasi)

2. https://en.wikipedia.org/wiki/Firebase

48 | P a g e