Hasil dan Pembahasan T1 672007173 Full text

11

5. Hasil dan Pembahasan

Form Tampilan Utama Aplikasi Gambar 8 Form Tampilan Utama Aplikasi Gambar 8 menunjukkan form tampilan utama dari aplikasi Auto Reject Call. Pada form utama terdapat screen untuk menulis pesan dan ada 4 button utama yang terdiri dari kiri ke kanan: Setting, Activedeactive, Reject call List, Exception number. Form Screen penulisan text message. Gambar 9 Form Screen penulisan text message Gambar 9 menunjukkan form Screen penulisan text message. Pada form screen text message bisa di edit sesuai keinginan user dan cara untuk edit dengan sentuh layar screen tersebut maka akan keluar keyword. Text Message ini yang akan dikirimkan secara otomatis melalui SMS pada caller. 12 Kode Program 1 Proses Automatic Sending Message notifyMe; messageSend = Maaf saya dalam perjalanan, harap hubungi saya di kemudian waktu; messageSend = readString; if new Booleanprefs.getBooleanAUTOMATIC MESSAGE, false includedinExceptionList { Log.vTAG, Kirim SMS...; sendSMSphoneNumber, messageSend; Kode program 1 menjelaskan proses pengiriman sms secara otomatis. Pada script ini notifyMe ; messageSend = “Maaf saya dalam perjalanan, harap hubungi saya di kemudian waktu”; adalah script simple database untuk menampilkan pesan kalau ada penolakan panggilan baru, if new Booleanprefs.getBooleanAUTOMATIC MESSAGE, false includedinExceptionList { Log.vTAG, Kirim SMS...; script ini berfungsi untuk pengecekan nomor penelpon jika masuk dalam daftar exception atau tidak, dan pada script ini sendSMSphoneNumber, messageSend; berfungsi untuk mengirim pesan secara otomatis. Form Setting Gambar 10 Form Setting Gambar 10 menunjukkan form Setting yang didalamnya user bisa melakukan pengaturan audio dan messaging. Pada pengaturan audio bisa memilih default tone dan silent, sedangkan pada autoSms untuk pengecekan automatic sms sudah aktif atau tidak. Kode Program 2 Proses Setting Audio dan Messaging public class EditPreference extends PreferenceActivity { MainActivity mA; Override public void onCreateBundle icicle { super.onCreateicicle; mA = new MainActivity; String[] entries = new String[]{Default tone, Silent}; String[] entryValues = new String[]{default, silent}; String[] entriesWall = new String[]{Wood, Sky, Forest}; String[] entryValuesWall = new String[]{wood, sky, forest}; addPreferencesFromResourceR.xml.preferences; final ListPreference tones = ListPreference findPreferenceRINGTONE; tones.setEntriesentries; tones.setDialogIconR.drawable.tone; tones.setEntryValuesentryValues; 13 tones.setSummarytones.getValue; tones.setOnPreferenceChangeListenernew OnPreferenceChangeListener { public boolean onPreferenceChangePreference preference, Object newValue { preference.setSummaryString newValue; return true; } }; final CheckBoxPreference wall = CheckBoxPreference findPreferenceAUTOSMS; wall.setOnPreferenceChangeListenernew OnPreferenceChangeListener { public boolean onPreferenceChangePreference preference, Object newValue { preference.setSummaryCheck it to send auto SMS; return true; } }; Kode program 2 menjelaskan script tentang pengaturan setting Audio dan Message, pada script String[] entries = new String[]{Default tone, Silent}; menjelaskan tentang pilihan dari pengaturan Audio yang bisa dipilih sesuai keinginan user yaitu Default tone tone bawaan dari mobile phone seperti “wood, sky, forest” dan Silent. Pada script final CheckBoxPreference wall = CheckBoxPreference findPreferenceAUTOSMS; wall.setOnPreferenceChangeListenernew OnPreferenceChangeListener { berfungsi untuk pengaturan automatic sms. Form Tampilan Exception Number List Gambar 11 Form Utama Exception Number list Gambar 11 menunjukkan tampilan awal form Exception number list. Dalam tampilan ini ada beberapa fungsi button yaitu button gambar folder untuk pengambilan nomor dari kontak mobile phone, button plus untuk penambahan nomor dalam daftar exception tersebut, button clear all untuk menghapus semua nomor dari dalam daftar exception dan button clear selected untuk menghapus beberapa nomor sesuai keinginan user. 14 Form Pengambilan nomor dari Contact Gambar 12 Form Pengambilan nomor dari Contact Gambar 12 menunjukkan pengambilan nomor langsung dari Contact bawaan mobile phone yang sebelumnya telah dimasukkan oleh user. Bisa dilihat contoh gambar 12 dimana user telah memasukkan nomor koko halim dalam daftar exceptionlist. Kode Program 3 Perintah Pengambilan nomor dari Contact public void onClickView v { Intent intent = new IntentIntent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI; startActivityForResultintent, PICK_CONTACT; } Kode program 3 menjelaskan script pengambilan nomor dari contact bawaan mobile phone, bisa dilihat pada script startActivityForResultintent, PICK_CONTACT; terjadi pengambilan nomor langsung dari contact. Form Penambahan nomor secara manual Gambar 13 Form Penambahan nomor secara Manual 15 Gambar 13 menunjukkan user bisa menambahkan nomor secara manual pada daftar Exception number list. Kode Program 4 Perintah Penambahan nomor secara manual public void onClickView v { if eT.getText.toString.equals || eT.getText.toString == null { Toast.makeTextgetBaseContext,Sorry, you still leave the empty number, Toast.LENGTH_SHORT.show; } else { if addFromContact { addFromContact = false; } else { contactName = Unsaved contact; } addexceptionListgetContactNameeT.getText.toString, eT.getText.toString; eT.setText; } } Kode Program 4 menjelaskan penambahan nomor secara manual dalam daftar exception artinya user menambahkan langsung tanpa melakukan view dari contact list, bisa dilihat pada script addexceptionListgetContactNameeT.getText.toString, eT.getText.toString;, dan pada script else { contactName = Unsaved contact; berfungsi untuk setiap penambahan nomor secara manual disimpan dengan nama unsaved contact. Kode Program 5 Perintah untuk penyimpanan contact sementara public class ExceptionAdapter extends ArrayAdapterExceptionNumber { ArrayListExceptionNumber lists; Context context; public ExceptionAdapterContext context, int resource, ArrayListExceptionNumber lists { supercontext, resource, lists; this.lists = lists; this.context = context; } Kode Program 5 menjelaskan script penyimpanan nomor contact sementara sebagai gantinya database, bisa dilihat pada script ArrayListExceptionNumber lists; Context context; semua contact yang masuk dalam daftar exception disimpan dalam arraylist. 16 Form Clear nomor dari daftar Exception Gambar 14 Form Clear nomor dari daftar Exception Gambar 14 merupakan contoh user yang telah memilih nomor yang di centang untuk di hapus dari daftar exception number list. Ada 2 cara pertama user bisa centang nomor kemudian tekan tombol Clear Selected dan Cara kedua user bisa tekan tombol Clear all untuk hapus semua nomor dari daftar exception number list. Kode Program 6 Perintah untuk Clear Selected clearSelectedBtn.setOnClickListenernew View.OnClickListener { Override public void onClickView v { int x = 0; ArrayListExceptionNumber exceptionListTemp; exceptionListTemp = MainActivity.exceptionList; if MainActivity.exceptionList = null { for ExceptionNumber en : exceptionListTemp { if en.isChecked { MainActivity.exceptionList.removex; } x++; } } adapter.notifyDataSetChanged; } }; Kode Program 6 menjelaskan script pengaturan dari fungsi button Clear Selected. Pada script ini if en.isChecked { MainActivity.exceptionList.removex; bisa dilihat jika nomor yang ada pada daftar exception telah dicekdi centang maka nomor tersebut akan dihapus sesuai yang telah dicek tersebut. Kode Program 7 Perintah untuk Clear all clearAllBtn.setOnClickListenernew View.OnClickListener { Override public void onClickView v { if MainActivity.exceptionList = null { MainActivity.exceptionList.clear; adapter.notifyDataSetChanged;} } } 17 Kode Program 7 menjelaskan script pengaturan dari fungsi button ClearAll, bisa dilihat pada script MainActivity.exceptionList.clear yang menghapus semua nomor dari daftar exception. Form Incoming Call Gambar 15 Form Incoming Call Gambar 15 merupakan form Incoming call. Pada form ini untuk melihat proses terjadinya panggilan masuk dari penelepon dan proses terjadinya rejection call secara otomatis. Kode Program 8 Perintah untuk panggilan masuk public void onReceiveContext context, Intent intent { mgr = MainActivity.mgr; calendar = Calendar.getInstance; formatter = new SimpleDateFormatdd MMMM yyyy hh:mm; Bundle bundle = intent.getExtras; AIRPLANE = Settings.System.getIntcontext.getContentResolver, Settings.System.AIRPLANE_MODE_ON, 0; isEnabled = AIRPLANE == 1; intent = new IntentIntent.ACTION_AIRPLANE_MODE_CHANGED; if null == bundle { return;} TelephonyManager tm = TelephonyManager context .getSystemServiceContext.TELEPHONY_SERVICE; Class c; try {c = Class.forNametm.getClass.getName; Method m = c.getDeclaredMethodgetITelephony; m.setAccessibletrue; teleService = ITelephony m.invoketm; } catch Exception e { Logger.getLoggerIncomingCallReceiver.class.getName.logLevel.SEVERE, null,e;} String state = bundle.getStringTelephonyManager.EXTRA_STATE; if state.equalsIgnoreCaseTelephonyManager.EXTRA_STATE_RINGING { phonenumber = bundle.getStringTelephonyManager.EXTRA_INCOMING_NUMBER; if phonenumber == null {phonenumber = ;} String info = Detect Calls sample application\nIncoming number: + phonenumber; Kode program 8 menjelaskan script dari perintah yang akan menerima panggilan masuk. Pada script TelephonyManager tm = TelephonyManager context .getSystemServiceContext.TELEPHONY_SERVICE;; dan Method m = c.getDeclaredMethodgetITelephony; m.setAccessibletrue;teleService = ITelephony m.invoketm; perintah terjadinya penerimaan panggilan masuk. 18 Kode Program 9 Perintah Panggilan masuk daftar Exception if includedinExceptionList { includedinExceptionList = false; Kode program 9 menjelaskan script perintah adanya panggilan yang masuk dalam daftar exception jadi tidak perlu di tolak panggilannya, bisa dilihat pada script if includedinExceptionList { includedinExceptionList = false; yaitu jika nomor dari penelpon masuk dalam daftar exceptionlist berarti terjadi false yang artinya panggilan tersebut tidak akan di tolak. Kode Program 10. Perintah Rejection call teleService.endCall; }} mA.phoneNumber = phonenumber; mA.alreadyIncoming = true; mA.count = mA.count + 1; mA.mySleepTime=0; } catch RemoteException ex { Logger.getLoggerIncomingCallReceiver.class.getName.log Level.SEVERE, null, ex; } } Kode program 10 menjelaskan script perintah terjadinya rejection call yang bisa dilihat pada script teleService.endCall; dimana semua panggilan yang tidak masuk dalam daftar exception catch RemoteException ex akan terjadi rejection call. Form ActiveDeactive Aplikasi Gambar 16 Form ActiveDeactive Cara untuk mengaktifkan aplikasi agar dapat berjalan, user bisa langsung tekan tombol ActiveDeactive sampai tombol tersebut berubah menjadi warna kuning seperti yang terlihat pada Gambar 16. 19 Kode Program 11 Perintah Send Message public void sendSMSString phoneNo, String msg { mySleepTime = 1000; String SENT = SMS_SENT; String DELIVERED = SMS_DELIVERED; SmsManager sms = SmsManager.getDefault; message = eT.getText.toString; Log.vTAG, message; sms.sendTextMessagephoneNo, null, message, sentPI, deliveredPI; Kode program 11 menjelaskan script perintah send message yang bisa dilihat pada script SmsManager sms = SmsManager.getDefault; message = eT.getText.toString; Log.vTAG, message; sms.sendTextMessagephoneNo, null, message, sentPI, deliveredPI;. Pada pengujian aplikasi Auto Reject call and sending message, menggunakan beberapa handphone dan berjalan dengan sukses. Berdasarkan pengujian sistem aplikasi Reject call and sending message membutuhkan space sebesar 812 kilobtyes. Setelah dilakukan pengujian menggunakan handphone Samsung Galaxy mini, LG Optimus Black P970 dan Samsung Galaxy Young, terdapat sedikit perbedaan pada letak dari menu-menu perintah pada navigation bar aplikasi yang disebabkan karena tiap-tiap vendor mempunyai metode desain yang berbeda-beda untuk jumlah penempatan soft key pada tiap-tiap handphone. Pada tabel 1 menunjukan pengujian dari aplikasi. Tabel 1 Pengujian Aplikasi Auto Reject call and sending message Tipe Handphone Layanan GSM Parameter Pengujian Keterangan Samsung Galaxy Mini Screen size 240x320 pixels, 3.14 Inches TouchWiz v3,0 UI OS : Android OS, v2.2Froyo XL Tampilan SplashSreen Berhasil Proses Reject Call Berhasil Proses Auto Sms Berhasil Penambahan kontak Exception Number List Berhasil LG Optimus Black P970 Screen size : 480x800 pixels, 4.0 inches Touch UI 2.0 OS : Android OS, Versi 2.2 Froyo Indosat IM3 Tampilan SplashSreen Berhasil Proses Reject Call Berhasil Proses Auto Sms Berhasil Penambahan kontak Exception Number List Berhasil 20

6. Simpulan