SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010
APLIKASI MOBILE CHAT PADA ANDROID
Respati Bary Mahputra, Wahyu Suadi Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Email :
[email protected] Abstrak- Dengan fitur telepon genggam yang lengkap saat ini dan tarif dari operator yang semakin murah maka banyak orang lebih menyukai chat daripada sms dan telepon. Dengan chat komunikasi pesan dapat berlangsung secara instan, selain itu biaya yang dikeluarkan lebih murah daripada telepon atau sms. Untuk itu penulis ingin membuat sebuah aplikasi chat yang mampu berjalan pada system operasi android. System operasi ini merupakan yang terbaru dikelasnya, namun perkembangannya sangat pesat. Aplikasi ini dibuat dengan menggunakan bahasa pemrograman java, dan dijalankan pada simulator froyo atau emulator system operasi android versi 2.2. Aplikasi ini juga nantinya akan dapat menentukan domain dan port server chat secara manual. Selain itu untuk setiap akun baru yang dibuat akan dilakukan tes koneksi dengan server yang dituju, untuk memvalidasi username dan password, sehingga akun yang disimpan nantinya benar – benar akun yang sudah terdaftar pada server chat. Aplikasi pesan instan ini sendiri nantinya akan dapat menjadi media komunikasi sederhana, mudah dikembangkan, mudah digunakan dan dapat dijadikan pilihan bagi mereka yang menyukai chat dengan menggunakan telepon genggam. Kata kunci : Android, Chat, Mobile .
tarif internet yang ditawarkan oleh berbagai operator menjadikan pesan instant sebagai salah satu fitur yang ada pada setiap HP saat ini. Saat ini banyak orang yang lebih suka menggunakan pesan instant daripada sms. Hal ini disebabkan pesan yang didapat lebih cepat sampai tujuan tanpa harus menunggu lama seperti sms. Walau tarif sms semakin murah, bahkan beberapa operator selular memberikan layanan sms gratis, penggunaan pesan instant pada HP tetap menjadi pilihan utama. Hal ini disebabkan karena walau bagaimanapun juga, penggunaan pesan instant biayanya jauh lebih murah dibandingkan mengirim pesan melalui sms. Penulis sendiri menyukai pengembangan aplikasi di bidang komunikasi, dan dengan adanya perubahan cara berkomunikasi saat ini menggunakan pesan instan, maka penulis merasa ingin membangun aplikasi pesan instan sendiri. Oleh sebab itu, dengan latar belakang diatas, penulis ingin membuat aplikasi pesan instant pada HP dengan menggunakan sistem operasi yang baru, dan belum banyak di explorasi, Android. Dengan pembuatan tugas akhir ini, dengan menggunakan sistem operasi yang baru, diharapkan sistem operasi Android semakin berkembang dikalangan developer teknologi informatika.
2. METODOLOGI Android Android merupakan sistem operasi berbasis Linux dengan interface Java. Menyediakan alatalat compiler, debugger dan perangkat emulator seperti Java Virtual Machine (JVM) yaitu Dalvik Virtual Machine (DVM). Android menggunakan DVM yang berbasis pada implementasi Apache Harmony Java. Dalvik menggunakan bytecode khusus. Oleh karena itu bytecode standart java tidakdapatdijalankan pada Android tapi harus menggunakan kompiler Android untuk membuat spesific bytecode Android. Android mendukung tampilan 2-D dan 3-D menggunakan librari OpenGL dan mendukung penyimpanan data pada database SQLLite. Untuk pengembangan Android, Google menyediakan Android Development Tools (ADT) bagi Eclipse untuk mengembagkan aplikasi Android.
1. Pendahuluan
Semakin banyaknya kebutuhan akan penggunaan layanan secara mobile menyebabkan perusahaan handphone (HP) berlomba - lomba dalam menghasilkan HP yang dapat memenuhi kebutuhan tersebut. Persaingan pasar HP dengan fitur yang lengkap menyebabkan semakin pesatnya perkembangan teknologi HP. Dan hal ini juga yang mengakibatkan harga HP semakin murah, karena banyak produk – produk HP baru yang dikeluarkan untuk memenuhi semua tuntutan tersebut. Jika dulu HP hanya digunakan sebagai media untuk berkomunikasi melalui suara atau sms, dengan teknologi saat ini HP sudah mampu untuk berkomunikasi dengan media visual dan pesan instant melalui jaringan internet seperti di komputer (PC). Dan dengan murahnya paket 1
Respati Bary Mahputra - 5105100015
SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010 Setiap aplikasi Android berjalan pada prosesnya sendiri dan terisolasi dari aplikasi lain yang sedang berjalan. Oleh karena itu aplikasi yang kurang menguntungkan tidak dapat merusak aplikasi Android yang lain. Smack merupakan salah satu librari XMPP (Jabber) yang bersifat open source dan merupakan salah satu library yang berbasis Java yang sangat populer dalam membuat aplikasi pesan instan seperti clients, bots, dan aplikasi lainnya. Smack diproduksi oleh developer yang sama dengan server openfire. Smack di lisensi di bawah naungan Apache.
client baik dari handphone lainnya.
Desain Aplikasi Pada Gambar di tunjukkan bagaimana aplikasi berjalan. Dimulai dari tampilan login, pada state ini user diminta untuk memasukkan username dan password dari akun yang telah dibuat. Dan apabila belum memiliki akun maka harus membuat terlebih dahulu. Untuk membuat akun pertama – tama masuk ke state konfigurasi server, dengan mengisi nama server dan port yang digunakan. Setelah mengisi konfigurasi servernya maka dilanjutkan dengan membuat akun, dibutuhkan username dan pasword yang digunakan untuk terhubung ke server. Kemudian aplikasi akan langsung mengecek apakah akun yang dibuat dapat terhubung ke server, apabila gagal, maka akan diminta untuk mengulangi lagi. Jika data yang dimasukkan pada pembuatan akun benar dan dapat terhubung ke server, maka data tersebut akan disimpan ke dalam database. Start
Menu Bantuan
Tampilan Login
Simpan ke Database
Cek Koneksi
Login Server
Konfigurasi Server
Buat Akun
Tampilan Roster
Tambah Pengguna Lain
komputer,
laptopataupun
3. Konfigurasi Sistem Android SDK UntukMenjalankan Android pada Eclipse harusmemiliki SDK Android terlebihdulu. SDK Androiddapat di unduh dari homepage Android. Hasil unduhan biasanya dalam bentuk zip yang bisa di extract pada sistem file. Letakkan pada "c:\android-sdk-windows". Instalasi Android Beberapa hal tentang android yang perlu diketahui Aplikasi Android terdiri dari beberapa bagian, yaitu : Activity - A screen in the Android application Services - Background activities without UI Content Provider - provides data to applications, Android contains a SQLLite DB which can serve as data provider Broadcast Receiver - receives system messages, can be used to react to changed conditions in the system Intends membolehkan aplikasi untuk melakukan request atau penggunaan layanan. Sebagai contoh, aplikasi call dapat meminta data kontak pada aplikasi contact. Aplikasi dapat mendaftarkan diri pada IntentFilter. Intent merupakan konsep yang sangat bagus untuk menciptakan kolaborasi antara beberapa aplikasi. Sebuah aplikasi android dijelaskan dalam sebuah file “AndroidManifest.xml”.
Tampilan Chat
Desain Jaringan Pada gambar ditunjukkan jaringan yang digunakan oleh aplikasi. Aplikasi tersebut dijalankan melalui handphone, kemudian dari handphone tersebut akan terhubung ke sebuah server. Yang mana pada server tersebut memiliki
2
Respati Bary Mahputra - 5105100015
SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010 dalam file ini terdapat seluruh activity pada aplikasi dan permissons apa saja yang dibutuhkan oleh aplikasi tersebut. Sebagai contoh apabila suatu aplikasi membutuhkan layanan untuk mengakses internet, maka hal itu akan tertera dalam disini “AndroidManifest.xml” yang bisa dijadikan sebagai deskripsi untuk menjalankan suatu aplikasi android. Context Kelas android.content.Context menyediakan koneksi dengan sistem Android. Contexts menyediakan metode GetSystemService yang membolehkan untuk menerima sebuah pengaturan objek untuk perangkat keras yang berbeda. Android SDK Untuk Menjalankan Android pada Eclipse harus memiliki SDK Android terlebih dulu. SDK Android dapat di unduh dari homepage Android. Hasil unduhan biasanya dalam bentuk zip yang bisa di extract pada sistem file. Letakkan pada "c:\android-sdkwindows".
Gambar 3.3Konfigurasi Eclipse
Pilih paket yang tersedia dan pilih versi SDK yang terbaru
Eclipse Plug-in Gunakan Eclipse Update Manager untuk menginstall plugins untuk Android Development Tools (ADT) dari URL https://dlssl.google.com/android/eclipse/
Konfigurasi Pada Eclipse buka Preferences dialog via Windows -> Preferences. Select Android dan lakukan perubahan pada installation path dari Android SDK.Select now Window -> Android SDK and AVD Manager dari menu. Gambar 3.4Versi SDK Terbaru Tekan "Install selected" dan konfirmasi lisensi untuk semua paket. Setelah instalasi selesai restart Eclipse.
3
Respati Bary Mahputra - 5105100015
SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010
Device Perangkat yang akan digunakan sebagai emulasi harus didefinisikan terlebih dahulu. Tekan tombol “device manager”, tekan “New” dan ikuti langkah berikut.
Device Manager (1)
Device Manager (3) Tekan "Create AVD" untuk membuat perangkat. Untuk menguji apakah pengaturan yang telah dilakukan dapat berjalan, maka klik pada perangkat yang baru dibuat kemudian tekan tombol “start”.
Device Manager (2)
Device Manager (4) Setelah beberapa saat maka perangkat akan berjalan seperti gambar d bawah.
4
Respati Bary Mahputra - 5105100015
SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010
Tampilan Login Pada tampilan ini terdapat menu configuration yang berfungsi untuk menentukan server dan membuat akun baru.
Device Manager (5)
Eclipse Plug-in Gunakan Eclipse Update Manager untuk menginstall plugins untuk Android Development Tools (ADT) dari URL https://dlssl.google.com/android/eclipse/. Login
Smack API
Tampilan setelah login
Smack merupakan salah satu librari XMPP (Jabber) yang bersifat open source dan merupakan salah satu library yang berbasis Java yang sangat populer dalam membuat aplikasi pesan instan seperti clients, bots, dan aplikasi lainnya. Smack diproduksi oleh developer yang sama dengan server openfire. Smack di lisensi di bawah naungan Apache.
Pada tampilan ini terdapat menu untuk menambah teman
Beberapa screenshot program antara lain sebagai berikut :
Daftar Teman
5
Respati Bary Mahputra - 5105100015
SEMINAR TUGAS AKHIR PERIODE AGUSTUS 2010 baik menggunakan komputer dengan spesifikasi high end.
6. Daftar Pustaka
Tampilan ketika chat ini merupakan tampilan ketika sedang chat dengan user lain.
1. http://developer.android.com/ind ex.html
2. http://www.igniterealtime.org/projec ts/smack/ 3. http://davanum.wordpress.com/2008 /12/29/updated-xmpp-client-forandroid/ 4. http://www.vogella.de/articles/Andr oid/article.html
Jendela Chat
4. Kesimpulan Dari hasil pengamatan selama perancangan, implementasi, dan proses uji coba perangkat lunak yang dilakukan maka dapat diambil kesimpulan bahwa implementasi algoritma aplikasi chat pada android telah mampu berjalan dengan baik.
5. Saran Berikut merupakan beberapa saran untuk pengembangan sistem pada masa yang akan datang, berdasarkan hasil perancangan, implementasi, dan uji coba yang telah dilakukan. Untuk menjalankan emulator Android pada komputer membutuhkan resource yang besar, sehingga dalam pengembangan aplikasi lebih
6
Respati Bary Mahputra - 5105100015