TUGAS AKHIR Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

  i

  

APLIKASI CLIENT FOTO ALBUM ONLINE

TUGAS AKHIR

Diajukan untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

  

Program Studi Teknik Informatika

Oleh :

Jimmy Gozali

  

045314068

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

  

2009

  

THE APPLICATION OF ONLINE PHOTO ALBUM

FOR CLIENT

A THESIS

Presented as Partial Fulfillment of the Requirements

To Obtain the Sarjana Teknik Degree

  

In Informatics Engineering

By:

Jimmy Gozali

  

045314068

  

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SAINS AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2009

  v

  MOTTO

Berubahlah untuk maju, karena perubahan

yang baik mendekatkan kita pada

kesuksesan.

  

Jangan bergantung pada orang lain,

karena nasib kita ada di tangan kita

sendiri bukan di tangan orang lain.

  

Pasrahkan hidup kepada Tuhan, karena

Tuhan pasti akan memberikan yang

terbaik bagi umat-Nya.

vi

  Internet dan handphone merupakan sesuatu yang umum digunakan pada

  zaman sekarang. Dengan adanya internet, user dapat melakukan apa saja yang diinginkan khususnya mengumpulkan gambar menjadi satu kesatuan foto album

  

online. Begitu juga dengan handphone yang memiliki fitur kamera, user dapat

  melakukan pengambilan gambar kapanpun dan dimanapun. Kendala yang dihadapi user adalah apabila memori handphone mulai penuh dan user kesulitan memindahkan gambar ke dalam sebuah komputer. Untuk itu dibutuhkan suatu aplikasi yang dapat mengirimkan gambar dari handphone ke dalam komputer dengan media internet yaitu “Aplikasi Client Foto Album Online”.

  “Aplikasi Client Foto Album Online” bertujuan untuk memudahkan para pengguna foto album online mengupload foto menggunakan handphone ke dalam

  

web “Sistem Foto Album Online”. Aplikasi ini dibuat dengan menggunakan

  pemrograman Pemrograman J2ME dan PHP & MySQL. Untuk melakukan upload atau pengiriman foto, user harus register terlebih dahulu dalam web “Sistem Foto Album Online” dengan mendaftarkan sebagai user anggota web tersebut. Selanjutnya proses upload dilakukan melalui media handphone tertentu yang support Java dan bisa akses GPRS (WAP).

  Hasil akhir yang diperoleh adalah suatu sistem “Aplikasi Client Foto Album Online” yang dapat berjalan baik menggunakan handphone Sony Ericsson K810i.

  Internet and handphone now became a general things in society. With internet, user can do anything they want to, including to take pictures and submit them to make an online collection. Like wise handphone with camera, user can take pictures anywhere and anytime. The problem is when the memory almost get full and user can’t transfering pictures to a computer. Thats why we need an application which can transfering pictures from handphone to computer with using internet, also called “Aplikasi Client Foto Album Online”.

  “Aplikasi Client Foto Album Online” supposed to give an easy way for online photo album users to uploading pictures from their handphone into “Sistem Foto Album Online” site. This application is made using J2ME and PHP & MySQL programming language. For uploading or submit pictures, user have to be registered at “Sistem Foto Album Online” site as a member. Next step, they can do uploading process on their hanphone with supported by Java and GPRS (WAP) connection.

  The final result is a system “Aplikasi Client Foto Album Online” which can done well on Sony Ericsson K810i Series.

KATA PENGANTAR

  Puji syukur kepada Tuhan Yang Maha Esa atas berkat, rahmat, karunia dan

bimbingan-Nya sehingga penulis dapat menyelesaikan skripsi dengan judul

”Aplikasi Client Foto Album Online”.

  Penyusunan skripsi ini tidak terlepas dari bantuan, bimbingan serta dukungan

dari berbagai pihak yang sangat bermanfaat bagi penulis. Maka pada kesempatan ini

penulis mengucapkan banyak terima kasih kepada:

  1. Ir. Greg. Heliarko S.J., S.S., B.S.T., M.A., M.Sc., selaku dekan Fakultas Teknik Universitas Sanata Dharma.

  2. Agnes Maria Polina, S.Kom., M.Sc., selaku dosen Pembimbing Akademik dan dosen pembimbing skripsi yang telah membimbing dan memberikan pengarahan selama penyusunan skripsi.

  3. Para dosen Universitas Sanata Dharma, khususnya dosen jurusan Teknik

Informatika yang telah memberikan bekal pengetahuan kepada penulis.

  4. Pak Bele dan Mas Danang yang telah membantu selama menggunakan fasilitas lab.

  5. Mas Lilik dan mas Pristo yang telah memberikan inspirasi kepada saya pada saat menyelesaikan skripsi ini.

  6. Fransindhu Njoo, Dicky, Willy, Aceng, Eka, Maman, Andy, Feri, Adi, Budi, Tono, Junaidi, Handi, kris terima kasih atas dukungan dan bantuan yang telah kalian berikan, semoga persahabatan kita tidak akan luntur untuk selamanya.

7. Untuk teman – teman yang tidak dapat disebutkan namanya satu- persatu, terima kasih atas persahabatannya yang masih terjalin selama ini.

  Penulis berharap semoga skripsi ini dapat berguna bagi semua pihak pada

umumnya dan bermanfaat bagi mahasiswa/i Teknik Informatika pada khususnya.

  

Akhir kata penulis menyadari bahwa skripsi ini jauh dari sempurna, untuk itu penulis

mengharapkan kritik dan saran yang membangun. Terima kasih dan God bless you.

  Yogyakarta, Januari 2009 Penulis

  Halaman Judul Bahasa Indonesia............................................................................. i Halaman Judul Bahasa Inggris ............................................................................... ii Halaman Persetujuan.............................................................................................. iii Halaman Pengesahan ..............................................................................................iv Halaman Persembahan .............................................................................................v Halaman Motto........................................................................................................vi Abstraksi ............................................................................................................... vii Abstract ................................................................................................................ viii Kata Pengantar ....................................................................................................... ix Daftar Isi............................................. ....................................................................xi Daftar Gambar.......................................................................................................xvi Pernyataan Keaslian Karya .................................................................................. xix

  Bab I PENDAHULUAN..........................................................................................1

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

  1.2 Rumusan Masalah ......................................................................................3

  1.3 Batasan Masalah.........................................................................................3

  1.4 Tujuan Penelitian .......................................................................................4

  1.5 Metodologi Penelitian ...............................................................................4

  1.6 Sistematika Penulisan ................................................................................7

  BAB II LANDASAN TEORI.................. ................................................................9

  2.1 Java 2 Micro Edition (J2ME).....................................................................9 xi

  2.1.1.1 Jenis Aplikasi J2ME ..........................................................10

  2.1.1.2 J2ME Configuration ..........................................................10

  2.1.1.3 J2ME Profile .....................................................................11

  2.1.1.4 Keuntungan Penggunaan J2ME Pada Peralatan Device ...12

  2.1.2 J2ME Wireless Toolkit ................................................................12

  2.1.2.1 Menu Default Device Selection ........................................12

  2.1.2.2 Menu Ktoolbar ..................................................................13

  2.1.3 Aplikasi MIDlet ............................................................................13

  2.1.3.1 Arsitektur Aplikasi MIDlet ...............................................13

  2.1.3.2 Eksekusi Sebuah MIDlet ...................................................15

  2.1.4 Pemrograman Graphics User Interface (GUI) pada MIDlet ........16

  2.1.4.1 Jenis Fungsi-Fungsi API pada MIDP untuk GUI .............16

  2.1.4.2 Model Pemrograman GUI pada MIDP .............................17

  2.1.4.2.1 Bekerja dengan Screen .......................................17

  2.1.4.2.2 Ticker .................................................................17

  2.1.4.2.3 TextBox ..............................................................18

  2.1.4.3 Bekerja dengan Form ......................................................19

  2.1.4.3.1 Kelas Item (javax.microedition.lcdui.Item) .....20

  2.1.4.4 Graphics ..........................................................................20

  2.1.4.4.1 Teks ..................................................................20

  2.1.4.5 J2ME untuk Koneksi Internet dengan Protokol HTTP ....21

  2.2 Pemrograman Berorientasi Objek ..............................................................26 xii

  2.2.2 Overloading Method ....................................................................29

  2.2.3 Method Main ................................................................................29

  2.2.4 Paket .............................................................................................29

  2.2.5 Hak Akses ....................................................................................30

  2.2.6 Pewarisan(Inheritance) .................................................................31

  2.2.7 Poliforfisme(Polymorphism) .......................................................31

  2.2.8 Kelas Abstrak ...............................................................................33

  2.2.9 Kelas Objek dan Kelas Class .......................................................33

  2.2.10 Interface ......................................................................................33

  2.3 Rekayasa Perangkat Lunak Berorientasi Objek ......................................34

  2.3.1 Use Case Diagram ........................................................................34

  2.3.2 Activity Diagram ..........................................................................37

  2.3.3 Sequence Diagram .......................................................................37

  2.3.4 Class Diagram ..............................................................................38

  BAB III ANALISIS DAN DESAIN SISTEM.......................................................39

  3.1 Analisa Sistem ........................................................................................39

  3.1.1 Gambaran Sistem ..........................................................................39

  3.1.2 Konsep Kerja Sistem ....................................................................40

  3.1.3 Use Case Diagram.........................................................................41

  3.1.4 Activity Diagram...........................................................................42

  3.1.5 Sequence Diagram .......................................................................49

  3.2 Desain / Perancangan Sistem....................................................................54 xiii

  3.2.2 Perancangan User Interface .......... ...............................................55

  BAB IV IMPLEMENTASI SISTEM ...................................................................63

  4.1 Karakteristik Sistem .................................................................................63

  4.2 Kebutuhan Sistem ....................................................................................64

  4.3 User Interface ..........................................................................................65

  4.3.1 Halaman Tampilan Pertama .........................................................65

  4.3.2 Halaman Tampilan Utama ...........................................................66

  4.3.3 Halaman Help untuk Tampilan Utama ........................................67

  4.3.4 Halaman Menu Upload ................................................................68

  4.3.5 Halaman Help untuk Menu Upload .............................................69

  4.3.6 Halaman Menu Browse Image .....................................................70

  4.3.7 Halaman Help untuk Menu Browse Image ..................................71

  4.3.8 Tampilan Foto dan Peringatan pada Halaman Browse Image .....72

  4.3.9 Halaman Menu Take Picture ........................................................75

  4.3.10 Halaman Help Menu Take Picture .............................................78

  4.3.11 Tampilan Peringatan Menu Take Picture ...................................79

  4.3.12 Tampilan Login untuk Upload ...................................................80

  4.3.13 Tampilan Pesan untuk Upload ...................................................81

  4.3.14 Tampilan Login untuk View ......................................................87

  4.3.15 Tampilan Web Browser Aplikasi Album Foto Online ..............90

  BAB V ANALISIS HASIL....................................................................................92

  5.1 Hasil Pengujian Sistem ............................................................................92 xiv

  5.3 Kekurangan Sistem ..................................................................................93

  BAB VI KESIMPULAN DAN SARAN ...............................................................94

  6.1 Kesimpulan ..............................................................................................94

  6.2 Saran.........................................................................................................94 Daftar Pustaka ........................................................................................................96 xv

Gambar 2.1 Contoh Use Case Diagram ............................................................ 34Gambar 2.2 Contoh hubungan Association (gabungan) .......................................36Gambar 2.3 Contoh hubungan extend ...................................................................36Gambar 2.4 Contoh hubungan depends on ...........................................................36Gambar 2.5 Entity Object ......................................................................................37Gambar 2.6 Interface Object .................................................................................38Gambar 2.7 Control Object ...................................................................................38Gambar 3.1 Konsep Kerja Sistem .........................................................................40Gambar 3.2 Use Case Diagram Aplikasi Client Foto Album Online ....................41Gambar 3.3 Activity Diagram Browse Image untuk Proses Upload .....................43Gambar 3.4 Activity Diagram Take Photo untuk Proses Upload .........................45Gambar 3.5 Activity Diagram View ......................................................................47Gambar 3.6 Activity Diagram Login ....................................................................48Gambar 3.7 Sequence Diagram Browse Image untuk Proses Upload ..................50Gambar 3.8 Sequence Diagram Take Photo untuk Proses Upload .......................51Gambar 3.9 Sequence Diagram View....................................................................52

  Gambar3.10 Sequence Diagram Login ..................................................................53

Gambar 3.11 Class Diagram .................................................................................54Gambar 3.12 Desain Tampilan Awal.....................................................................55Gambar 3.13 Desain Tampilan Pilihan .................................................................55Gambar 3.14 Desain Menu jika memilih Menu Upload .......................................56 xviGambar 3.16 Desain Tampilan Upload .................................................................57Gambar 3.16 Desain Form Login .........................................................................57Gambar 3.18 Desain Pesan Interaksi ....................................................................58Gambar 3.19 Desain Pengambilan Gambar ..........................................................59Gambar 3.20 Desain Tampilan Gambar ................................................................60Gambar 3.21 Desain Form Login .........................................................................60Gambar 3.22 Desain Pesan Interaksi ...................................................................60Gambar 3.23 Desain Login untuk View ...............................................................61Gambar 3.24 Desain Tampilan Utama untuk View ..............................................62Gambar 4.1 Tampilan Awal Aplikasi ...................................................................65Gambar 4.2 Halaman Tampilan Utama ................................................................66Gambar 4.3 Halaman Help untuk Tampilan Utama ..............................................67Gambar 4.4 Halaman Menu Upload ......................................................................68Gambar 4.5 Halaman Help untuk Menu Upload ..................................................69Gambar 4.6 Halaman Menu Browse Image...........................................................70Gambar 4.7 Halaman Help untuk Menu Browse Image .......................................71Gambar 4.8 Tampilan Foto yang sesuai dengan Ketentuan Aplikasi ...................72Gambar 4.9 Peringatan apabila File yang Dipilih bukan Image ...........................72Gambar 4.10 Peringatan apabila Ukuran Foto Telalu Besar untuk Ditampilkan ..72Gambar 4.11 Halaman Menu Take Picture ...........................................................75Gambar 4.12 Halaman Help Menu Take Picture ..................................................78Gambar 4.13 Tampilan Peringatan Menu Take Picture ........................................79 xviiGambar 4.15 Tampilan Pesan Apabila Proses Upload Berhasil ...........................81Gambar 4.16 Tampilan Pesan Apabila File yang Diupload sudah ada..................81Gambar 4.17 Tampilan Login untuk View ...........................................................87Gambar 4.18 Tampilan Aplikasi Foto Album Online ...........................................90Gambar 4.19 Tampilan Foto yang sudah Masuk Aplikasi Foto Album Online ....90

  xviii

BAB I PENDAHULUAN

1.1. Latar Belakang Masalah

  Saat ini kemajuan di bidang internet bukan menjadi hal yang biasa lagi di kalangan umum. Internet sekarang seakan-akan telah menjadi teman hidup yang tidak bisa terlepaskan dari kehidupan sehari-hari. Para pengguna internet dapat melakukan apa saja dengan media internet tersebut karena media ini hampir dapat menyediakan apa saja yang diinginkan maupun yang dibutuhkan oleh pengguna tersebut. Sebagai contoh dalam pengaksesan file image atau gambar yang ada di internet. Para user dapat mencari file gambar apa saja yang mereka inginkan baik itu gambar artis, animasi, 3D, dan lain sebagainya. Apalagi didukung juga banyaknya forum-forum maupun website sekarang yang menyediakan file- file gambar apa saja yang diinginkan.

  Para user dapat dengan mudah mengumpulkan gambar-gambar yang diinginkan. Masalahnya adalah para user tidak mudah menyimpannya atau mengumpulkannya sebagai satu kesatuan foto album di internet itu sendiri.

  Dilain pihak, kemajuan teknologi khususnya dalam bidang mobile

  phone berkembang cepat sekali. Sebuah produk handphone yang

  diproduksi memiliki fitur-fitur yang sangat menarik seperti, kamera, radio, pemutar mp3, dan masih banyak lagi yang lain. Untuk fitur kamera,

  2 diketahui bahwa sekarang ini hampir semua handphone yang dikeluarkan memiliki kamera, karena fitur ini sangat menarik bagi para pengguna

  handphone sehingga laku keras di pasaran.

  Kadang-kadang pengguna handphone berkamera tidak semuanya bisa secara leluasa menggunakan kamera handphonenya. Hal ini diakibatkan oleh memori dari handphone yang terbatas serta keterbatasan dari pengguna handphone yang tidak semuanya memiliki komputer pribadi sendiri. Apabila pada saat memori handphone mulai penuh tetapi pengguna handphone masih ingin melakukan pengambilan foto dan tidak mau melakukan hapus foto sebelum memindahkan terlebih dahulu file foto yang ada dalam handphone ke media penyimpanan lainnya seperti komputer, maka hal ini akan menjadi kendala bagi pengguna handphone berkamera meskipun tidak semuanya mengalami kendala tersebut.

  Dalam tugas akhir ini, aplikasi yang dibuat penulis telah didukung oleh web yang telah dibuat oleh penulis lain dan web inilah yang nantinya menerima dan menyimpan foto yang telah diupload oleh aplikasi handphone.

  Dari latar belakang itulah maka penulis tertarik untuk melanjutkan mengembangkan aplikasi client foto album online dengan handphone menggunakan pemrograman Java 2 Micro Edition (J2ME),PHP dan MySQL.

  3 Dengan adanya aplikasi ini, user dapat dengan mudah mengirimkan atau mengupload foto melalui melalui handphone ke web yang sudah dibuat.

1.2. Rumusan Masalah

  Beberapa rumusan masalah yang muncul dalam pembuatan aplikasi ini adalah sebagai berikut :

  1. Bagaimana mengembangkan aplikasi client untuk mengupload foto ke “Sistem Foto Album Online” dengan menggunakan pemrograman

J2ME?

  2. Seberapa jauh aplikasi ini dapat dijalankan di berbagai handphone (Nokia N-70, Sony Ericsson Z550i, Sony Ericsson K810i)?

1.3. Batasan Masalah

  Beberapa batasan masalah dalam pembuatan aplikasi ini adalah sebagai berikut :

  1. Sistem yang dikembangkan adalah aplikasi client untuk upload foto yang dijalankan atau running menggunakan mobile phone.

  2. Tidak mengembangkan web server “Sistem Foto Album Online”.

  3. Karakteristik “Aplikasi Client Foto Album Online” yaitu: a. File gambar yang dapat diupload bertipe JPG.

  b. Picture size yang bisa diupload berkisar 1 Megapixel.

  4 c. File foto yang diupload mempunyai default kategori pribadi atau private.

  d. Aplikasi yang dibuat ini menggunakan pemrograman Java 2 Micro Edition (J2ME), serta pemrograman PHP dan MySQL.

  e. Pada penelitian ini tidak dibahas mengenai biaya pembayaran maupun biaya hosting.

  4. Aplikasi ini diuji coba pada handphone Nokia N-70, Sony Ericsson Z550i, dan Sony Ericsson K810i.

  1.4. Tujuan Penelitian

  Tujuan dari penelitian ini adalah : Membuat suatu aplikasi yang dapat mendukung dan membantu para pengguna handphone berkamera untuk mengupload foto secara online.

  1.5. Metodologi Penelitian

  Dalam penyusunan tugas akhir ini ada beberapa langkah yang digunakan diantaranya

  1. Studi Literatur Tahap ini merupakan tahap pengumpulan informasi yang diperlukan untuk perancangan sistem. Informasi tersebut diperoleh dengan membaca literatur ataupun artikel –artikel di internet yang berhubungan dengan tugas akhir ini.

  5

  2. Melakukan pengembangan Perangkat Lunak dengan metode Rekasaya Perangkat Lunak berorientasi objek yaitu :

  a) Aktivitas Analisis Objek i. Menganalisa kebutuhan sistem dengan menggunakan use case diagram. ii. Memodelkan alur kerja sebuah proses dan urutan aktivitas dalam sebuah proses ke dalam bentuk activity diagram dan tetap mengacu kepada use case diagram. iii. Menjelaskan interaksi objek yang disusun dalam suatu urutan waktu dengan menggunakan sequence diagram. iv. Memasukkan objek-objek yang ada ke dalam suatu class diagram.

  b) Perancangan Berorientasi Objek Merupakan langkah multiproses yang memusatkan kerja pada perancangan sistem secara umum seperti perancangan user

  interface.

  c) Pemrograman Berorientasi Objek Setelah perancangan-perancangan menghasilkan sebuah rancangan sistem yang diinginkan, maka hasil rancangan tersebut diterjemahkan ke dalam bahasa yang dimengerti oleh mesin.

  6 d) Pengujian Berorientasi Objek

  Pengujian berorientasi objek dimaksudkan untuk menguji apakah hasil yang telah dibuat sudah sesuai dengan rancangan yang diinginkan dan mencari segala kesalahan yang mungkin terjadi. Proses pengujian yang dilakukan yaitu: i. Memindahkan file .jar atau .jad ke dari komputer ke handphone yang support java dan bisa koneksi GPRS. ii. Melakukan penginstalan file .jar atau .jad di handphone. iii. Menjalankan “Aplikasi Client Foto Album Online” dan mencoba mengupload sebuah foto ke web

  “Sistem Foto Album Online”. iv. Ulangi langkah 1-3 coba dengan menggunakan

  handphone Nokia N-70, Sony Ericsson Z550i, dan Sony Ericsson K810i.

  v. Analisis dan bandingkan hasil yang didapat pada langkah 4.

  7

1.6. Sistematika Penulisan

  Sistematika penulisan dalam karya ini adalah :

  BAB I PENDAHULUAN Berisikan latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, metodologi penelitian, dan sistematika penelitian dari karya ini.

  BAB II LANDASAN TEORI Berisikan teori-teori yang dipakai dalam penyusunan Tugas Akhir ini, meliputi Java 2 Micro Edition (J2ME), Pemrograman Berorientasi Objek, Rekayasa Perangkat Lunak Berorientasi Objek. BAB III ANALISA DAN PERANCANGAN SISTEM Berisikan analisa sistem yang akan dibuat, pengidentifikasian masalah, cara mengatasi masalah, serta perancangan disain proses, dan user interface.

  BAB IV IMPLEMENTASI SISTEM Berisikan implementasi dari analisa dan perancangan yang ada pada bab III. BAB V ANALISA HASIL IMPLEMENTASI Berisikan analisa hasil terhadap implementasi yang sudah berhasil dibuat.

  8

  BAB VI PENUTUP Berisikan kesimpulan dan saran mengenai karya yang sudah dibuat.

LANDASAN TEORI

  Pada Bab II ini berisi teori-teori yang mendukung untuk implementasi sistem. Ada 3 materi yang ditulis di bab II ini yaitu Java 2 Micro Edition (J2ME) yang berisi fungsi-fungsi dari J2ME itu sendiri, pemrograman berorientasi objek yang berisi teknik-teknik dan prinsip- prinsip menggunakan objek dalam suatu pemrograman, dan rekayasa perangkat lunak berorientasi objek yang berisi cara-cara membuat perangkat lunak dengan metode berorientasi objek dan keunggulan yang dimiliki.

2.1. Java 2 Micro Edition (J2ME)

2.1.1. Java 2 Micro Edition

  Java 2 Micro Editon (J2ME) merupakan subset dari J2SE yang

  ditujukan untuk implementasi pada peralatan embedded system dan

  handheld yang tidak mampu mendukung secara penuh implementasi

  menggunakan J2SE. Embedded system adalah produk-produk dengan komputer mikro berada di dalamnya, namun aplikasi yang bisa dimanfaatkan dari peralatan tersebut sangatlah spesifik.

  J2ME sangat berguna untuk membangun sebuah aplikasi pada

  peralatan dengan jumlah memori dan kapasitas penyimpanan terbatas, serta kemampuan user interface yang terbatas, seperti pada perangkat komunikasi bergerak berupa handphone, PDA, dan sebagainya.

  10

2.1.1.1. Jenis Aplikasi J2ME

  Saat ini terdapat dua jenis aplikasi dari J2ME, yaitu :

  1. Walled garden application , yaitu aplikasi yang berdiri sendiri atau

  standalone yang berjalan pada handphone tanpa perlu mengakses sumber data eksternal melalui jaringan pembawa atau carrier network.

  Contoh dari aplikasi ini adalah kalkulator atau single player games.

2. Network aware application

  atau aplikasi yang berinteraksi dengan jaringan. Tidak seperti aplikasi yang pertama, aplikasi ini memiliki kemampuan untuk mengakses sumber data eksternal. Contohnya aplikasi email yang berada di handphone, aplikasi ini untuk mendapatkan kembali data alamat-alamat yang tersimpan melalui jaringan dan pengiriman email berbagai alamat melalui jaringan data.

2.1.1.2. J2ME Configuration

  J2ME dapat dibagi dalam configuration dan profile. J2ME configuration adalah spesifikasi yang secara detail menjelaskan tentang

  sebuah virtual machine dan kumpulan API-API dasar yang dapat digunakan dalam kelas-kelas tertentu dari sebuah peralatan. J2ME

  configuration mendefinisikan lingkungan kerja J2ME runtime. Oleh

  karena setiap handheld devices memiliki fitur-fitur yang berbeda-beda,

  J2ME configuration ini dirancang untuk menyediakan library standart yang mengimplementasikan fitur standar dari sebuah handheld devices.

  11

a. Connected Limited Device Configuration (CLDC)

  Adalah konfigurasi untuk peralatan wireless dengan kapasitas memori yang kecil dan koneksi jaringan yang tidak tetap atau terputus- putus seperti pager, handphone, dan Personal Digital Assistants (PDA). Salah satu spesifikasi profilenya adalah mobile information device

  profile. Kategori yang digolongkan dalam CLDC dapat digunakan pada handphone seperti Nokia, Samsung Java Phone, Motorola i85s, Organizer atau PDA seperti PALM, Pocket PC, dan two way pagers.

  Memori yang dipakai berukuran 160-512 kilobytes.

  b. Connected Device Configuration (CDC) CDC digunakan untuk peralatan dengan kapasitas memori yang lebih

  besar dengan koneksi jaringan yang lebih kokoh contohnya pada set-top

  boxes dan peralatan internet. Konfigurasi ini diperuntukan bagi peralatan wireless dengan resource memori yang lebih besar paling sedikit 2 megabytes, konektivitas ke beberapa tipe jaringan.

2.1.1.3. J2ME Profile

  J2ME Profile menyediakan implementasi-implementasi tambahan

  yang sangat spesifik dari sebuah handheld devices. J2ME Profile mengimplementasikan kemampuan atau fitur lain yang sangat bergantung pada jenis perangkat handheld yang digunakan.

  12 Hartanto,2003) :

  a. Mobile Information Device Profile (MIDP) yang menyediakan

  library-library Java untuk implementasi dasar antarmuka (GUI), implementasi jaringan (networking), database, dan timer.

  b. Foundation Profile (FP)

  c. Personal Profile

  d. RMI Profile

  e. Personal Digital Assistance Profile

2.1.1.4. Keuntungan Penggunaan J2ME Pada Peralatan Wireless

  Keuntungan dari penggunaan J2ME ini akan mengurangi latensi selama koneksi antara komunikasi perangkat keras di sisi user dengan

  server, tampilan di layar perangkat komunikasi user semakin dipercaya

  dengan animasi-animasi grafis yang menarik, interaksi user dengan sistem semakin meningkat, penggunaan bahasa markup tidak dibatasi dalam hal tampilan ke pengguna, aplikasi berbasis browser dapat bekerja dengan baik pada daerah yang tidak terjangkau dengan sinyal provider layanan komunikasi bergerak.

2.1.2 J2ME Wireless Toolkit

2.1.2.1. Menu Default Device Selection

  13 aplikasi wireless akan banyak berurusan dengan emulator dan tidak akan berurusan langsung dengan perangkatnya. Menu default device selection digunakan untuk memilih default emulator yang akan digunakan saat mencoba aplikasi wireless Java nantinya. Masing-masing emulator memiliki karakteristik tersendiri, namun memiliki fitur standar sebagai sebuah handheld. Sehingga akan dapat menghasilkan hasil yang lebih baik untuk banyak handheld dengan memilih emulator yang sesuai.

2.1.2.2. Menu Ktoolbar

  Menu ini merupakan menu utama dari aplikasi untuk pengembangan Java MIDP atau dikenal MIDlet. Ktoolbar merupakan lingkungan pengembangan minimal yang disediakan oleh J2ME Wireless Toolkit untuk pengembangan MIDlet.

2.1.3. Aplikasi MIDlet

2.1.3.1. Arsitektur Aplikasi MIDlet

  Dalam pengembangan aplikasi MIDlet, proyek yang dibuat terdiri atas direktori-direktori berikut :

  1. Src : berisi file-file kode Java

  2. Bin : berisi file-file JAD, JAR, dan manifest

  3. Lib : berisi file-file kelas Java yang diperlukan dalam format JAR atau ZIP

  14 Istilah-istilah penting dalam daur hidup sebuah MIDlet yaitu :

  a. Application Management software (AMS)

  AMS ini merupakan software atau program bawaan yang ada dalam

  perangkat handheld tersebut yang mengatur manajemen MIDlet yang ada.

  b. MIDlet Merupakan aplikasi yang dijalankan pada sebuah perangkat

  

handheld. MIDlet tidak berinteraksi langsung dengan hardware dari

handphone, Palm, atau perangkat handheld lain, melainkan berinteraksi

  melalui application management software. AMS inilah yang akan menerima sinyal dari MIDlet bahwa MIDlet akan dijalankan atau berhenti.

  c. MIDlet states Merupakan status dari sebuah MIDlet.

  Ada 3 status MIDlet yaitu :

  a.) Paused Status ini terjadi jika MIDlet selesai diinisialisasikan dan tidak melakukan aksi apapun, status ini tidak boleh sedang mengunci sebuah file untuk ditulis yang menyebabkan proses lain tidak bisa menulis ke file tersebut.

  Status MIDlet merupakan Paused apabila :

  1. Setelah MIDlet dibuat dengan konstruktor new()

  15

  MIDlet.pauseApp() dan MIDlet.notifyPaused()

  3. Dari status Active, ketika akan start() terjadi kesalahan berupa

  exception:MIDletStateChangeException

  b.) Active Status ini terjadi jika MIDlet sedang aktif/berjalan dengan normal, yaitu setelah memanggil fungsi MIDlet.startApp().

  c.) Destroyed Status ini terjadi jika MIDlet berhenti berjalan (exit), sehingga seluruh sumber daya yang digunakan akan dibebaskan. Status ini berhasil jika dilakukan pemanggilan fungsi MIDlet.destroyApp() atau MIDlet.notifyDestroyed().

2.1.3.2. Eksekusi Sebuah MIDlet

  Urutan eksekusi sebuah MIDlet adalah sebagai berikut :

  1. AMS (Application Management Software) menginisialisasi sebuah objek MIDlet, sehingga MIDlet berada pada status Paused.

  2. Ketika AMS memutuskan bahwa MIDlet sudah waktunya dijalankan, maka AMS memanggil fungsi MIDlet.startApp() sehingga MIDlet akan mulai aktif berfungsi.

  3. Ketika AMS memutuskan bahwa MIDlet harus dinonaktifkan sementara, maka AMS akan memanggil fungsi MIDlet.pauseApp() sehingga MIDlet akan berhenti bekerja.

  16 selamanya, maka AMS akan memanggil fungsi MIDlet.destroyApp() sehingga alokasi memori yang digunakan oleh MIDlet yang bersangkutan akan dibersihkan.

  2.1.4. Pemrograman Graphic User Interface (GUI) pada MIDlet

  Perangkat handheld memiliki teknik pemrograman GUI yang berbeda dengan teknik pemrograman yang umumnya digunakan pada aplikasi pada komputer. Fungsi-fungsi untuk GUI akan ditangani oleh MIDP (Mobile Information Device Profile).

2.1.4.1. Jenis Fungsi-Fungsi API pada MIDP untuk GUI

  Ada 2 level yang disediakan oleh MIDP untuk pembuatan GUI yaitu :

  1. Highlevel : aplikasi MIDlet akan lebih portabel dengan banyak perangkat handheld yang berbeda. Jadi aplikasi MIDlet dijalankan dengan handheld lain maka hasilnya akan sama. Kelas-kelas untuk manajemen pemrograman ini akan diturunkan dari

  javax.microedition.lcdui.Screen.

  2. Lowlevel : pada level ini akan didapatkan fungsionalitas yang lebih spesifik ke jenis handheld yang digunakan. Jadi apabila digunakan

  handheld yang tidak sesuai dengan aplikasi tersebut maka aplikasi tidak

  akan jalan dengan baik. Kelas-kelas untuk pemrograman GUI pada level

  17

  javax.microedition.lcdui.Graphics.

2.1.4.2. Model Pemrograman GUI pada MIDP

2.1.4.2.1. Bekerja dengan Screen

  Ada 3 tipe screen pada MIDlet yaitu :

  1. Complex Screen Object

  Tipe ini mengatur komponen-komponen GUI yang sudah tidak bisa ditambahi oleh komponen screen yang lain. Contohnya screen yang berisi objek ListBox untuk meminta masukan user, tidak akan bisa diisi dengan objek lain.

  2. Generic Screen Object

  Tipe ini mengatur komponen-komponen GUI Form, yang bisa ditambahi komponen screen yang lain.

  3. Low Level Screen Object Tipe ini digunakan oleh subkelas javax.microedition.lcdui.Graphics dan javax.microedition.lcdui.Screen.

  Objek screen memiliki 4 jenis objek turunan yang umum digunakan yakni TextBox, Alert, Choicegroup, dan Form. Kelas

  javax.microedition.lcdui.Screen merupakan kelas abstrak dengan dua karakteristik yaitu objek screen bisa memiliki title dan ticker.

2.1.4.2.2. Ticker

  18 aplikasi MIDlet. Sebuah ticker dapat ditempatkan pada objek-objek turunan kelas Screen. Fungsi-fungsi yang penting dalam kelas Ticker adalah :

  1. Konstruktor yang dipakai untuk menginisialisasi objek Ticker

  Public Ticker(String str) {

Syncronized(Display.LCDUILock) {

setupText(str); }

  }

  2. Parameter str merupakan teks yang akan ditampilkan Ticker p = new Ticker(“Your Text”)

  3. Public void setString(String str); Untuk menetapkan teks yang akan ditampilkan sebagai ticker.

4. Public String getString();

  Menghasilkan teks yang ditampilkan oleh objek Ticker yang sedang aktif pada objek screen.

2.1.4.2.3. TextBox

  Kelas textbox merupakan kelas turunan dari kelas abstrak

  javax.microedition.lcdui.Screen. TextBox menyediakan media untuk menerima masukan teks dari keypad pengguna handheld.

  Konstruktor dari kelas TextBox ini adalah :

  19 Parameter-parameternya sebagai berikut : 1. String title : untuk memberikan title pada Screen.

  2. String text : untuk memberikan nilai awal pada TextBox.

  3. Int maxSize : untuk memberikan batasan maksimal jumlah karakter yang bisa diterima oleh TextBox.

  4. Int constraints : nilai-nilai yang bisa digunakan dalam parameter ini adalah :

  Textfield.ANY : bisa memasukkan sembarang karakter teks

Textfield.EMAILADDR : bisa memasukkan alamat email

Textfield.NUMERIC : bisa memasukkan teks berupa angka saja Textfield.PHONENUMBER : bisa memasukkan teks yang berupa

  nomor telepon

  Textfield.URL : bisa memasukkan teks berupa alamat web atau URL lain Textfield.PASSWORD : bisa memasukkan password dengan

  karakter tertentu (‘*’)

2.1.4.3. Bekerja dengan Form

  Bekerja dengan form memungkinkan untuk menampilkan beberapa komponen GUI semacam daftar pilihan, masukan teks (textbox) dalam suatu layar. Form diimplementasikan oleh kelas

  javax.microedition.lcdui.Form. Form dapat menampung komponen-

  20 adalah textfield, images, date fields, gauge, dan choice groups. Ada 2 konstruktor form yang digunakan :

  Public Form(String title) menyediakan sebuah form dengan judul form seperti parameter title yang diberikan.

  Public Form(String title, Item[] items) mendefinisikan item-item apa saja yang akan ada di form yang dibuat.

  2.1.4.3.1. Kelas Item