2 1. Pendahuluan
Perkembangan teknologi yang semakin pesat memberikan kemudahan bagi masyarakat. Telepon selular yang pada awalnya hanya dipergunakan untuk sebatas kegiatan mengirim pesan singkat dan telepon saja, kini sudah diperlengkapi dengan berbagai fitur hiburan seperti pemutar musik, menampilkan gambar, merekam suara, merekam video dan sebagainya. Perkembangan teknologi yang semakin pesat telah menempatkan mobile phone sebagai salah satu alat komunikasi yang efisien untuk mengakses, menyimpan dan memproses informasi.
Melihat kondisi pada saat ini yang semakin banyak saja kecelakaan yang terjadi pada pengemudi kendaraan, yang salah satunya disebabkan karena pengemudi menerima telepon saat sedang mengemudi [1]. Undang-undang (UU) nomor 22 tahun 2009 tentang lalu lintas dan angkutan jalan. Pada UU ini tidak dijelaskan secara spesifik bahwa tidak bisa menerima telepon saat mengendarai, tapi dijelaskan bahwa para pengemudi wajib “berkonsentrasi saat berkendara”. Dimaksudkan dengan “berkonsentrasi” adalah setiap yang mengemudi kendaraan dengan penuh perhatian tidak terganggu perhatiannya karena sakit, lelah, mengantuk, menggunakan telepon atau menonton televisi sehingga mempengaruhi kemampuan dalam mengemudi.
ACR (Anonymous Call Rejection) adalah jenis penyaringan dan fitur pemblokiran yang ditawarkan oleh banyak penyedia layanan telepon seluler. Meskipun ada banyak variasi tentang fungsi-fungsi ACR, kebanyakan dari pelayanan ini memungkinkan pelanggan untuk memblokir penelepon berdasarkan keterangan yang muncul ditelepon yang dilengkapi dengan ID pemanggil. Proses ini mirip dengan Filtering dan Blocking service yang didasarkan pada ANI (automatic number identification) yang biasanya ditampilkan untuk dilihat oleh penerima panggilan, tetapi memungkinkan manfaat tambahannya untuk memblokir panggilan masuk yang dibuat menggunakan beberapa jenis teknologi samaran agar dapat menyembunyikan identitas sebenarnya dari pemanggil [2].
Short Message Service (SMS) adalah layanan pesan teks komponen telepon, web, atau
sistem komunikasi mobile menggunakan protocol standar komunikasi yang memungkinkan pertukaran pesan teks singkat antara fixed line atau perangkat ponsel [3]
Android adalah sistem operasi mobile phone berbasiskan linux. Android bersifat open
sourcecode yang diberikan secara gratis bagi para pengembang untuk menciptakan aplikasi
agar dapat berjalan di android. Kemudian hal yang menjadi latar belakang perancangan dan implementasi aplikasi Auto reject call ini adalah teknologi yang digunakan yaitu teknologi Android. Khususnya pada arsitektur yang terbuka yang berbasiskan Intent dan bisa diubah sesuai kebutuhan dikarenakan sistem flexibel yang terdapat pada platform [4].
Berdasarkan hal ini maka dirancang aplikasi Mobile bagi pengemudi untuk mengurangi terjadinya tingkat kecelakaan yaitu Auto reject call and send message yang secara otomatis menolak panggilan masuk dan secara otomatis mengirim sms pada waktu sedang mengemudi kendaraan. Kemudian menuangkannya kedalam bentuk penelitian dengan judul “Perancangan Aplikasi Auto Reject Call and Sending Message berbasis Mobile dalam Teknologi Android”.
2. Kajian Pustaka
Penelitian yang berjudul “An intelegent auto call-transfer service based on
location-awareness through wireless sensor network for the traditional phone system”. Dalam
penelitian ini dibahas tentang fungsi pengalihan panggilan secara otomatis dari panggilan masuk kepada seseorang, layanan dasar ini didukung oleh PTSN (Public Switched Telephone
Network) yang adalah jaringan telekomunikasi tertua dan terbesar yang masih beroperasi.
3
Contohnya adalah dengan mengidentifikasi lokasi karyawan seperti dia bergerak disekitar gedung perkantoran, setiap kali ada panggilan masuk, panggilan tersebut akan dialihkan ke telepon kantor terdekat sesuai keberadaan karyawan tersebut berada [5].
Penelitian lainnya yang berjudul “Method and Apparatus for Incoming call rejection” adalah sebuah metode dan perangkat untuk menolak panggilan masuk dalam alat komunikasi ponsel. Metode dan perangkat ini mengijinkan pengguna ponsel untuk menolak panggilan masuk secara otomatis dan biasanya langsung diterima oleh perangkat telepon tersebut. Ketika ada panggilan masuk maka panggilan masuk yang memiliki identitas itu dibandingkan dengan informasi identitas yang ada di dalam memori penolakan. Ketika ada persamaan yang terdeteksi, sebuah pesan untuk menolak langsung dikirim secara otomatis dari alat komunikasi ponsel ke stasiun pemancar. Pada saat menerima pesan penolakan itu, stasiun pemancar memutuskan panggilan masuk dan mengalihkan panggilan ke sistem pesan suara [6].
Tinjauan Teknologi Android
Android merupakan open platform yang dirancang untuk perangkat mobile. Hal ini dilakukan oleh Google dan dimiliki oleh Open Handset Alliance dengan tujuannya yaitu mempercepat adanya inovasi pada aplikasi mobile dan konsumen-konsumennya dengan banyaknya aplikasi, harga yang lebih murah, serta pengalaman yang lebih baik pada mobile biasanya. Android juga merupakan platform yang meliputi banyak hal, yang artinya adalah kumpulan software komplit pada perangkat mobile. Untuk para pembangun aplikasi, Android menyediakan semua perangkat dan framework untuk membangun aplikasi mobile dengan cepat dan mudah. Yang dibutuhkan adalah Android SDK untuk memulai pembangunannya. Untuk para pengguna, Android bisa bekerja secara langsung [7].
Dalam perancangan aplikasi auto reject call and sending message tersebut menggunakan android version 2.2 Froyo (Frozen Yogurt). Android 2.2 OS Froyo memiliki banyak perkembangan dari generasi sebelumnya eclair. Yang menjadi hal awal penilaian Android Froyo adalah Performa dan kecepatan, Berbagai hasil uji telah menunjukkan Android 2.2 lebih cepat dan stabil. Dukungan Flash, Android 2.2 dapat dengan mudah menampilkan video dan game secara langsung dari browser bawaan ponsel. WiFi Hotspot : Jelas ini merupakan keunggulan bagi Android Froyo, OS ini memungkinkan ponsel untuk menjadi sumber koneksi Internet secara nirkabel untuk hingga 10 perangkat. Android Market yang Semakin Berkembang : Dalam OS 2.2, pengguna dapat menginstall aplikasi langsung ke penyimpanan kartu SD sehingga dapat langsung diakses bila dipindahkan ke ponsel lain, dan masih banyak perubahan lain. Browser yang lebih baik, Hal ini sudah diuji oleh engage, Android 2.2 Froyo menang dari segi kecepatan dan performa dibanding mobile phone lain [8].
3. Metode Penelitian
4
Gambar 1 Model Prototyping [9]
Pada tahap pertama, Listen To Customer mengumpulkan kebutuhan-kebutuhan pengguna (user) secara lengkap kemudian melakukan analisa terhadap kebutuhan tersebut untuk mencari solusi dengan mengimplementasikan fungsi-fungsi di dalam aplikasi. Tahap ini dilakukan pengumpulan kebutuhan dengan melakukan survei pada beberapa kasus kecelakaan lalulintas yang terjadi guna mencari faktor-faktor penyebab kecelakaan dan melakukan wawancara langsung kepada Polisi lalulintas guna untuk mengetahui masalah-masalah yang dihadapi dalam kecelakaan serta memberikan pemecahan masalah melalui sistem yang akan dibangun dan mencari data keunggulan dari smartphone Android serta membandingkan dengan smartphone lainnya seperti Blackberry, dalam sistem yang akan dibangun dipilih menggunakan smartphone Android karena masih dalam masa perkembangan dan setiap lisensi tidak perlu di bayar (free).
Pada tahap kedua, Build or Revise Mock-up merancang aplikasi Auto Reject Call
and Sending Message menggunakan metode prototyping dan membuat Unified Modelling Language (UML), perancangan sistem, dan perancangan tampilan antar muka pengguna
(user interface).
Pada tahap ketiga, Customer test-drives Mock-up tahapan ini dilakukan pengujian secara bertahap menggunakan metode black-box testing terhadap aplikasi yang telah diimplementasikan pada beberapa mobile phone Android untuk mengetahui apakah semua fungsi yang ada pada sistem telah berjalan dengan baik dan dapat digunakan oleh pengemudi kendaraan. Pada tahap ini juga dilakukan pengujian responden dengan membuat kuisioner dan dibagikan kepada beberapa teman, sopir angkutan umum dan Polisi lalulintas guna untuk mengetahui tingkat efektifitas dan efisien dari aplikasi yang dibangun.
4. Persyaratan Analisis Model
Persyaratan analisis yang dilakukan akan dibagi berdasarkan pihak-pihak yang terlibat di dalam sistem yang dirancang (biasa disebut dengan actor). Analisis ini akan memuat segala informasi actor serta apa saja yang dapat dilakukan oleh actor tersebut.
5
Change settings
Make exception list
Reject Call User
View number list
Gambar 2 Use Case Diagram Sistem pada aplikasi Auto reject call and sending message
Gambar 2 merupakan use-case diagram dari sistem yang dikembangkan. Use-case menjelaskan bagaimana user sebagai actor utama dalam menggunakan sistem. Beberapa tahap user untuk bisa melakukan reject call, yaitu pertama user melakukan Change settings untuk mengatur Audio dan Automatic message, kedua user melakukan Make exception list agar nomor yang masuk dalam daftar exception tidak di tolak panggilannya, ketiga yaitu
Reject call ini adalah proses utama dari sistem aplikasi, pada proses Reject call terjadi
penolakan panggilan dan pengiriman Sms secara otomatis, dan tahap terakhir yaitu View
number list dalam tahap ini user bisa melihat nomor-nomor yang telah ditolak panggilannya.
Activity diagram menggambarkan aktivitas-aktivitas yang terjadi untuk
6
Start
Finish
Active Reject Call
Included In
Exception? Call Rejection
N
Call Receive Y
Deactive
Send Sms
Number List Sistem
: User
Gambar 3 Activity Diagram Reject Call
Gambar 3 menjelaskan proses activity diagram Reject call. Langkah pertama user mengaktifkan aplikasi reject call, setelah aplikasi aktif dan adanya panggilan masuk maka terjadi proses pengecekan nomor, jika nomor masuk dalam daftar exception list maka nomor tersebut masuk dalam Call receive atau tidak terjadi penolakan panggilan dan jika nomor tidak masuk dalam daftar exception list maka panggilan dari nomor tersebut akan otomatis di tolak (Call rejecion). Langkah kedua, setelah terjadi proses call rejection maka akan ada
Send Sms secara otomatis pada nomor pemanggil. Langkah terakhir nomor dari pemanggil
7
Start
insert num ber
add number
get num ber from contact?
clear exception list?
End
show number from contact
exception number is list saved
clear eception lis t
get from contact list Y
N
N
Y
: Contact List Sistem : Exception Act.
: User
Gambar 4 Activity Diagram Exception Number List
Gambar 4 menjelaskan activity diagram proses Exception number list, langkah pertama user melakukan insert number, kemudian jika nomor yang akan dibuat exception ada pada contact list atau ambil dari contact buku telepon maka exception number tersebut di
save, jika nomor tidak ada pada contact atau buku telepon maka user harus masukkan nomor
dengan cara diketik di contact yang tersedia kemudian di save. Selanjutnya clear exception, jika user tidak ingin menggunakan exception maka nomor yang telah di save akan dihapus semua dari daftar exception.
Sequence diagram menggambarkan peristiwa yang diceritakan urut berdasarkan waktu.
8
: User
RejectCall_boundary RejectCall_controller Contact_entity
1: active
2: setContactException
3: receiveCall
4: check exceptionlist
5: check exceptionlist
6: rejection call
7: automatic Sms
8: new notification
9: get view notification
10: deactive
Gambar 5 Sequence Diagram Reject Call
Gambar 5 menjelaskan sequence diagram yang terjadi dalam sistem Reject call, dimana langkah pertama user melakukan open sistem, kemudian setcontactException untuk pengecualian nomor agar nomor yang masuk daftar tidak di tolak panggilannya. Jika ada panggilan masuk atau recieve call, sistem akan melakukan pengecekan exceptionlist. Jika nomor tidak masuk dalam daftar exceptionlist berarti panggilan akan di tolak atau Rejection
call, Lalu pengiriman automaticSms kepada penelpon. Setelah itu user mendapat new notification, kemudian user melihat atau get view notification untuk mengetahui
9 : User
:
ExceptionView_boundary
:
ExceptionView_controller
ExceptionView_entity
1: open exception
2: get number from contact
3: insert number from contact
4: insert manual number
5: process reject call
6: clear number
7: deactive
Gambar 6 Sequence Exception Number list
Gambar 6 menjelaskan sequence diagram Exception, langkah pertama user melakukan
open sistem exception dan selanjutnya melakukan getNumber from contact, kemudian insertNumber from contact untuk memasukkan nomor dalam daftar exception, user juga bisa insert manual number yang secara manual memasukkan nomor dalam daftar exception.
Langkah selanjutnya terjadi process reject call, kemudian user melakukan clear number dan sistem aplikasi deactive.
Class diagram adalah diagram yang digunakan untuk menampilkan beberapa kelas
10 mainActivity editPreference audio message setRingtone() setAutoSms() savePreference() 1 1 message textMessage setMessage() editMessage() deleteMessage() saveMessage() 1 1 rejectCallList rejectionCall name number image time getViewRejectioncall() checkNumber() getViewName() getViewImage() checkTime() delete() 1 1 exceptionNumberlist name number insertNumberFromContact() addName() addNumber() deleteNumber() 1 1 1 1 1 1 1 1 1 1
Gambar 7 Class Diagram aplikasi Auto Reject Call and Sending Message
Gambar 7 menjelaskan Class diagram yang terdiri dari objek-objek yang digunakan dalam sistem. Objek tersebut antara lain: EditPreferene, Message, Reject call list dan
Exception number list yang masing-masing memiliki atribut sebagai user interface,
fungsi-fungsi atau operasi dan relasi.
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, Active/deactive, 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
12
Kode Program 1 Proses Automatic Sending Message
notifyMe();
messageSend = "Maaf saya dalam perjalanan, harap hubungi saya di kemudian waktu";
messageSend = readString();
if (new Boolean(prefs.getBoolean("AUTOMATIC MESSAGE", false)) &&
!includedinExceptionList) {
Log.v(TAG, "Kirim SMS..."); sendSMS(phoneNumber, 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 Boolean(prefs.getBoolean("AUTOMATIC MESSAGE", false)) &&
!includedinExceptionList) { Log.v(TAG, "Kirim SMS..."); script ini berfungsi untuk
pengecekan nomor penelpon jika masuk dalam daftar exception atau tidak, dan pada script ini
sendSMS(phoneNumber, 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 onCreate(Bundle icicle) { super.onCreate(icicle); 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"}; addPreferencesFromResource(R.xml.preferences);
final ListPreference tones = (ListPreference) findPreference("RINGTONE"); tones.setEntries(entries);
13 tones.setSummary(tones.getValue());
tones.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { preference.setSummary((String) newValue); return true;
} });
final CheckBoxPreference wall = (CheckBoxPreference) findPreference("AUTOSMS"); wall.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { preference.setSummary("Check 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) findPreference("AUTOSMS"); wall.setOnPreferenceChangeListener(new 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,
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 onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent, PICK_CONTACT); }
Kode program 3 menjelaskan script pengambilan nomor dari contact bawaan mobile phone, bisa dilihat pada script startActivityForResult(intent, PICK_CONTACT); terjadi pengambilan nomor langsung dari contact.
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 onClick(View v) {
if (eT.getText().toString().equals("") || eT.getText().toString() == null) {
Toast.makeText(getBaseContext(),"Sorry, you still leave the empty number",
Toast.LENGTH_SHORT).show(); } else {
if (addFromContact) { addFromContact = false; } else {
contactName = "Unsaved contact"; }
addexceptionList(getContactName(eT.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 addexceptionList(getContactName(eT.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 ArrayAdapter<ExceptionNumber> {
ArrayList<ExceptionNumber> lists; Context context;
public ExceptionAdapter(Context context, int resource, ArrayList<ExceptionNumber> lists) { super(context, resource, lists);
this.lists = lists; this.context = context; }
Kode Program 5 menjelaskan script penyimpanan nomor contact sementara sebagai gantinya
database, bisa dilihat pada script ArrayList<ExceptionNumber> lists; Context context;
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.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) { int x = 0;
ArrayList<ExceptionNumber> exceptionListTemp; exceptionListTemp = MainActivity.exceptionList; if (MainActivity.exceptionList != null) {
for (ExceptionNumber en : exceptionListTemp) { if (en.isChecked()) {
MainActivity.exceptionList.remove(x); }
x++; }
}
adapter.notifyDataSetChanged(); }
});
Kode Program 6 menjelaskan script pengaturan dari fungsi button Clear Selected. Pada script ini if (en.isChecked()) { MainActivity.exceptionList.remove(x); bisa dilihat jika nomor yang ada pada daftar exception telah dicek/di centang maka nomor tersebut akan dihapus sesuai yang telah dicek tersebut.
Kode Program 7 Perintah untuk Clear all
clearAllBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View 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 onReceive(Context context, Intent intent) { mgr = MainActivity.mgr;
calendar = Calendar.getInstance();
formatter = new SimpleDateFormat("dd MMMM yyyy hh:mm"); Bundle bundle = intent.getExtras();
AIRPLANE = Settings.System.getInt(context.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0);
isEnabled = AIRPLANE == 1;
intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED); if (null == bundle) {
return;}
TelephonyManager tm = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE); Class c;
try {c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony"); m.setAccessible(true);
teleService = (ITelephony) m.invoke(tm); } catch (Exception e) {
Logger.getLogger(IncomingCallReceiver.class.getName()).log(Level.SEVERE, null,e);}
String state = bundle.getString(TelephonyManager.EXTRA_STATE); if (state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_RINGING)) {
phonenumber = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER); if (phonenumber == null) {phonenumber = "";}
String info = "Detect Calls sample application\nIncoming number: " + phonenumber;
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.getLogger(IncomingCallReceiver.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 Active/Deactive Aplikasi
Gambar 16 Form Active/Deactive
19
Kode Program 11 Perintah Send Message
public void sendSMS(String phoneNo, String msg) { mySleepTime = 1000;
String SENT = "SMS_SENT";
String DELIVERED = "SMS_DELIVERED"; SmsManager sms = SmsManager.getDefault();
message = eT.getText().toString();
Log.v(TAG, message);
sms.sendTextMessage(phoneNo, 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.v(TAG, message); sms.sendTextMessage(phoneNo, 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.2(Froyo)
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
20 6. Simpulan
Berdasarkan hasil penelitian dengan melakukan tahapan analisa, perancangan, implementasi, dan pengujian sistem Aplikasi Auto reject call and sending message, maka dapat ditarik kesimpulan bahwa aplikasi ini dapat secara otomatis menolak panggilan masuk dan mengirim sms secara otomatis pada saat sedang mengemudi. Kesimpulan lainnya, aplikasi ini mempunyai pengaturan exception number list yang mana pengaturan ini dilakukan untuk pengecualian nomor pemanggil agar ketika nomor tersebut melakukan panggilan tidak di reject. Aplikasi ini mampu diimplementasikan pada ponsel yang berbasiskan Android.
7. Daftar Pustaka
[1] Asrian. 2008. Analisis faktor kecelakaan. FKM Universitas Indonesia. Jakarta.
[2] Tatum, Malcolm. 2003. What is Anonymous Call rejection, United States of America : WiseGeek Media.
[3] Willey. 2010. For Information about text Messaging SMS, Citations : America. [4] Gramlich, Nicolas. 2008. Andbook: Android Programming. Germany.
[5] Chen, Fang & Wang. 2009. An intelegent auto call-transfer service based on
location-awareness through wireless sensor network for the traditional phone system. Nat
Chung HsingNat University. Taiwan.
[6] Beghtol & Mar. 2001. Method and apparatus for incoming call rejection. San Diego University. CA (Unite state).
[7] Gargenta, Marko. 2011. Learning Android. United States of America: O’Reilly Media. [8] Barerra, David. 2011. What is Android Froyo 2.2, Carleton University. Canada.
[9] Pressman, Roger S., 2005, Software Engineering, Prototyping Model edisi 6. [10] Corbyn. 2009. Send Message (SNDMSG), United States of America : IBM Media. [11] Istiyanto, Jazi. 2004. Rancangan dan implementasi prototipe sistem kendali jarak jauh
berbasis AT89C52 dan layanan SMS GSM, Jurnal ilmu dasar volume 5, Yogyakarta. [12] Piraro, Dan. 2011. Anonymous Call Rejection and Caller-ID, United States of America
: The Chronicle of higher Edication.
[13] Safaat, Nazruddin. 2011. Android. Informatika. Bandung.
[14] Tsuei, Yuan-Mao. 2009. Electronic Device, Incoming call Answering and Rejection
Method and Digital data storage media. Taoyuan University. Taiwan.
[15] Yoon & Kim. 2007. Method and Apparatus for Rejecting call reception in a Mobile
communication terminal. Seoul University. Seoul Korea Selatan.
Samsung Galaxy
Young S5360
Screen size : 240x320 pixels, 3.0 inches TouchWiz UI
OS : Android OS, v2.3 (Gingerbread)
Indosat IM3
Tampilan SplashSreen Berhasil (Gelap)
Proses Reject Call Berhasil
Proses Auto Sms Berhasil
Penambahan kontak
Exception Number List