11.1 Tujuan Timers

dokumen-dokumen yang mirip
1.Mengatur jadwal tugas menggunakan Timers 2.Mengetahui bagaimana membaca file dari aplikasi mobile sederhana

DateField adalah objek yang dapat digunakan untuk menampilkan atau mengedit objek yang bertipe Date.

Nilai Properti Constrains pada TextField

Bab Tujuan. 2.2 Pengenalan. 2.3 "Hello, world!" MIDlet

Mobile Computing. Ramos Somya

Mobile Computing. Ramos Somya

MODUL 11 J2ME (Java 2 Micro Edition)

Low Level User Interface

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

J2ME GUI dan Manajemen Event

1. Tujuan. 2. Latar Belakang. 3. Percobaan. Modul Praktikum MMAPI. Setelah mempelajari bab ini, Pelajar diharapkan mampu untuk :

1. Tujuan. 2. Latar Belakang. 3. Percobaan. Modul Praktikum Layer Manager

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Company LOGO

BONUS. Dasar Java Mobile. Mengenal Java Mobile Mengenal MIDlet Mobile Grafis Mobile Animasi Latihan Soal

LOGIN FORM MENGGUNAKAN PROGRAM JAVA

Membuat Aplikasi Kirim SMS. Menggunakan Java J2ME

Robertus Lilik Haryanto

1. Tujuan. 2. Latar Belakang. 3. Percobaan. Modul Praktikum TiledLayer

Membuat Aplikasi Nilai dengan Login. Menggunakan Java J2ME

MODUL 9 J2ME (Java 2 Micro Edition)

LAMPIRAN Listing Program

IF5093 Java ME. Achmad Imam Kistijantoro Semester II 2006/2007. IF-ITB/AI/Mar 07. IF5093 Java ME

PEMOGRAMAN APLIKASI BERGERAK (Java ME)

1.Tujuan. 2. Latar Belakang. 3. Percobaan

PENGEMBANGAN APLIKASI MOBILE MODUL PRAKTIKUM. Persistence. Versi 1.0 JAVA EDUCATION NETWORK INDONESIA

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK (JAVA) PERTEMUAN 12 WIRELESS JAVA PROGRAMMING WITH JAVA 2 MICRO EDITION (J2ME)

LAMPIRAN A Project SendSMS /////////////////////////////////////////////////////// ParsingKata.java

MODUL 10 J2ME (Java 2 Micro Edition)

LAMPIRAN A. Universitas Kristen Maranatha

P4 Bab 4 User Interface

Copyright Chocolove Mic 2003 IlmuKomputer.Com

Yoannita Company LOGO

Bab 9. Mengetahui teknik yang berbeda dalam optimisasi aplikasi mobile

Pengenalan APLIKASI DATABASE

DAFTAR ISI. ABSTRAK... i KATA PENGANTAR... ii DAFTAR ISI... iii DAFTAR TABEL... xi DAFTAR GAMBAR... xiv

Untuk menampilkan proses pembuatan file JAR. Untuk menentukan nama file archive (file JAR)

Penggunaan Canvas Pada J2ME Untuk Game Programming

BAB III PERANCANGAN SIMULASI

Persiapan Lingkungan Pengembangan Android

Kode tereksekusi dengan baik sehingga mendapatkan output "JENI Java Education Network Indonesia" yang diikuti oleh "Hello Jeni"

PRAKTIKUM 2 ANTAR MUKA TINGKAN ATAS

Membuat Router dengan NAT pada Windows XP

gplat,1,, rrl "f-dj.; alp' fll --s =- f a,ufrrnr"rpi c o .'lr, rr* f a;lrjiiltr* '. 'i-r'f rr srlagi'(+ SISTEM MOBILE (PRAKTIKUM) DISUSUN OLEH:

BAB IV PENGOPERASIAN DAN PENGUJIAN SOFTWARE. komputer. Satu komputer berfungsi sebagai server dan komputer yang satunya

JavaMobile. Buka program NetBeans IDE anda klik TombolStart pada Windows Taskbar. Kemudian klik Programs NetBeans 5.5 NetBeans IDE.

BAB II DASAR TEORI. menggunakan gelombang radio di atas frekuensi 1 GHz. Suatu sistem transmisi

1.Tujuan. 2. Latar Belakang. 3. Percobaan Percobaan 1 Pembuatan Nada :

PENGEMBANGAN APLIKASI MOBILE MODUL PRAKTIKUM. Optional Packages. Versi 1.0 JAVA EDUCATION NETWORK INDONESIA

AUTHMODE_PRIVATE hanya bisa diakses oleh MIDlet suite yang menciptakan record store tersebut

BAB III JAVA 2 MICROEDITION (J2ME) definisi dari sun adalah sekumpulan teknologi pemrograman yang digunakan

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

Tutorial Jasper Report with JDBC Prerequisites: Jasper Report, ireport installed, MySQL installed, and NetBeans IDE

Didalam menampilkan peta yang sudah kita buat, kita akan menggunakan Slick2D sebagai sebuah frameworknya.

A-PDF OFFICE TO PDF DEMO: Purchase from to remove the watermark. Ade Sarah H

1. Pilih BAB IV IMPLEMENTASI DAN PENGUJIAN. kebutuhan sistem yang meliputi emulator Java2 Micro Edition(J2ME) dan telepon


Aplikasi Kriptografi pada Pengiriman SMS dengan Menggunakan Metode Enkripsi Simetris

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Dalam pembahasan tentang chatting menggunakan J2ME ini

INSTRUKSI PENCABANGAN

IMPLEMENTASI PEMROGRAMAN VISUAL BASIC DENGAN DATABASE ACCESS

BAB 8 Argumen dari Command-line

BAHASA PEMROGRAMAN JAVA

Rekomendasi Min Perangkat Keras. Prosesor dual core 1.5 GHz RAM 2 GB Monitor 10 " VGA Onboard Keyboard PS2 Mouse PS2

BAB IV IMPLEMENTASI DAN PENGUJIAN

MENGOPI DAFTAR KONTAK

Gambar ini menunjukkan informasi pemilihan folder untuk melakukan instalasi software XAMPP.

Pendahuluan ( First Session). Baca terlebih dahulu halaman ini :

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

BAB 8 Argumen dari Command-line

BAB IV SIMULASI DAN ANALISIS

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB 4 IMPLEMENTASI SISTEM APLIKASI JAVA VIDEO CONFERENCE. 1. Prosesor 500 MHz atau lebih tinggi, MB RAM minimum, 3. 1 MB free hardisk space

Belajar Java 2 Tambah, Simpan & Cari Data di Netbeans dengan Database MySQL

TUGAS MANDIRI MAKALAH. : Pemrograman Mobile Praktek

SMS Gateway. oleh: Kaka E. Prakasa Nanang Syaifudin

Agate Mobile Game Developer Camp

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI DAN PENGUJIAN APLIKASI. Setelah melakukan analisis dan perancangan terhadap Aplikasii

Persiapan. 2.1 Hardware

BAB IV IMPLEMENTASI DAN PENGUJIAN

APLIKASI PENGAMAN ISI LAYANAN PESAN SINGKAT PADA TELEPON SELULER BERBASIS J2ME MENGGUNAKAN ALGORITHMA SIMETRI SKRIPSI. Oleh : MIFTAHUL.

Optional Packages. Bab ini akan membahas bagaimana memulai penggunaan Mobile Media API (MMAPI) dan Wireless Messaging API (WMA).

Modul Praktikum 1 Pemograman Berorientasi Objek

BAB 4 IMPLEMENTASI DAN EVALUASI

APLIKASI MOBILE UNTUK KOMPRESI SEND MESSAGE SERVICE (SMS) BERBASIS JAVA MIDLET

Install Italc Di Windows XP

BAB 2. Class Thread. Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi

J2ME GUI dan Interkoneksi Client Server

APLIKASI MOBILE-CHATTING MENGGUNAKAN FASILITAS BLUETOOTH DENGAN J2ME

BAB IV IMPLEMENTASI DAN PENGUJIAN

APLIKASI KAMUS MATEMATIKA UNTUK HANDPHONE

Setting SMS Gateway dengan GAMMU Private Training Web Development Padang. 11/2/2014

Riwayat Pendidikan: SDK Lemuel II, Pos Pengumben, Jakarta Barat SMPK Lemuel, Pos Pengumben, Jakarta Barat SMUN 78, Kemanggisan, Jakarta Barat

PENGEMBANGAN APLIKASI MOBILE

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Company LOGO

BAB IV IMPLEMENTASI DAN PENGUJIAN APLIKASI. implementasi terdapat dua cakupan yaitu spesifikasi kebutuhan sistem yang

Percobaan 9 Basic Widget

Gambar 4.17 Instalasi Modem Nokia 6100 Install From Disk

1. Modifier Digunakan untuk memberikan batasan atau penanda bagaimana kelas lain menggunakan attribut, constructor dan method dari suatu kelas.

Prosedur Percobaan Program Tampilan

Transkripsi:

Bab 11 Topik-topik Tambahan 11.1 Tujuan Setelah menyelesaikan bab ini, siswa diharapkan mampu: mengatur jadwal tugas menggunakan Timers meregister koneksi yang datang pada Push Registry 11.2 Timers Timer dan TimerTasks berfungsi agar Anda bisa melakukan penjadwalan tugas pada suatu waktu. Tugas dapat juga dijadwalkan untuk diulang-ulang sampai interval tertentu. Anda dapat membuat tugas dengan menurunkan (extending) TimerTask dan mengimplement method run(). Method run() akan dieksekusi berdasarkan jadwal yang ada pada Timer. class CounterTask extends TimerTask { int counter = 0; public void run() { System.out.println("Counter: " + counter++); Untuk menjadwalkan sebuah tugas, buat sebuah Timer dan gunakan method schedule() yang ada pada Timer untuk menjadwalkan jalannya tugas. Setiap Timer berjalan pada bagian yang terpisah. Method schedule() memiliki beberapa bentuk. Anda dapat mengatur waktu tugas untuk mulai dengan memberikan delay dalam mililiseconds atau dengan memberikan waktu absolut (java.util.date). Parameter ketiga pada method schedule() adalah periode pengulangan dari tugas. Jika nilai pengulangan diberikan, tugas akan dieksekusi dalam periode waktu tertentu. Timer timer = new Timer(); TimerTask task = new CounterTask(); Pengembangan Perangkat Mobile 1

// task akan dimulai dalam 8 detik dan diulangi setiap 1 detik timer.schedule(task, 8000, 1000); Anda dapat menghentikan timer dengan menggunakan method close(). Method ini dapat menghentikan timer dan mengabaikan tugas yang dijadwalkan. Perlu Anda catat, bahwa ketika Timer dihentikan, maka tidak dapat diulangi (direstart) kembali. void schedule(timertask task, Long delay) Melakukan penjadwalan tugas untuk dieksekusi sesudah menentukan delay yang diinginkan (dalam milliseconds) void schedule(timertask task, Long delay, long period) Melakukan penjadwalan tugas untuk dieksekusi berulang-ulang, dimulai sesudah delay yang ditentukan (dalam milliseconds) void schedule(timertask task, Date time) Melakukan penjadwalan tugas agar dapat dieksekusi pada waktu yang ditentukan. void schedule(timertask task, Date time, long period) Melakukan penjadwalan tugas untuk dieksekusi berulang-ulang, dimulai pada waktu yang ditentukan. void cancel() Menghentikan timer, mengabaikan tugas yang dijadwalkan. import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import java.io.*; import java.util.timer; import java.util.timertask; import java.util.date; public class TimerMidlet extends MIDlet implements CommandListener{ private Command exitcommand; private Form form; private StringItem textfield; private Display display; Pengembangan Perangkat Mobile 2

public TimerMidlet() { exitcommand = new Command("Exit", Command.EXIT, 1); textfield = new StringItem("Counter", ""); Timer timer = new Timer(); TimerTask task = new CounterTask(this); timer.schedule(task, 2000, 1000); form = new Form("Timer Test"); form.addcommand(exitcommand); form.append(textfield); public void startapp() { display = Display.getDisplay(this); form.setcommandlistener(this); display.setcurrent(form); public void pauseapp() { public void destroyapp(boolean unconditional) { timer.cancel(); public void commandaction(command c, Displayable d) { if (c == exitcommand) { destroyapp(true); notifydestroyed(); public void settext(string text){ textfield.settext(text); class CounterTask extends TimerTask { Pengembangan Perangkat Mobile 3

int counter = 0; TimerMidlet midlet; public CounterTask(TimerMidlet midlet){ this.midlet = midlet; public void run() { counter++; midlet.settext("" + counter); System.out.println("Counter: " + counter); 11.3 Push Functionality Push Registry berfungsi agar MIDlet bisa meregister koneksi yang masuk dengan Application Management Software (AMS). Jika program tidak berjalan, AMS akan mendengarkan koneksi pada alamat yang telah diregister oleh aplikasi. Hampir semua tipe koneksi didukung, termasuk ServerSocket dan MessageConnection. Anda dapat meregister koneksi yang masuk dengan Push Registry menggunakan dua cara: cara statis dengan menggunakan file application descriptor (JAD) atau dinamis selama proses runtime menggunakan PushRegistry API. Pada bab ini kita akan meregister secara statis push application kita pada application descriptor (JAD) kita. NetBeans Mobility Pack membantu kita untuk memodifikasi Application Descriptor dengan mudah termasuk pada Push Registry. Klik kanan pada Project name, selanjutnya klik Properties untuk membuka Properties Page pada project. Pengembangan Perangkat Mobile 4

Pilih bagian Push Registry: Klik "Add" untuk meregister koneksi yang masuk: Pengembangan Perangkat Mobile 5

Ulangi proses sebelumnya hingga semua koneksi yang masuk sudah teregister. Dalam kasus ini, kita melakukan koneksi sms pada port 8888 dan koneksi socket (socket connection) pada port 1234: Pengembangan Perangkat Mobile 6

Pilih bagian "API Permissions": Pilih "Add" untuk menambah ijin (permission) untuk aplikasi MIDlet. Kita harus menambahkan API javax.microedition.io.pushregistry untuk menginstall aplikasi. Kita juga harus menambahkan semua API yang digunakan oleh aplikasi: Pengembangan Perangkat Mobile 7

Hilangkan tanda pada bagian required untuk semua API: Pengembangan Perangkat Mobile 8

Pilih bagian "Signing" dan beri tanda "Sign Distribution" untuk mendaftarkan aplikasi MIDlet: Pengembangan Perangkat Mobile 9

Pilih bagian "Running" dan pilih "Execute through OTA (Over the Air Provisioning)". Hal ini merupakan proses instalasi dan eksekusi aplikasi pada device. Pengembangan Perangkat Mobile 10

Langkah selanjutnya adalah menjalankan aplikasi MIDlet. Pastikan build berjalan dan tidak ada error ketika melakukan instalasi device (via OTA provisioning). Pengembangan Perangkat Mobile 11

Untuk menjalankan aplikasi MIDlet, gunakan WMA console (Tools -> Java Platform Manager -> J2ME Wireless Toolkit 2.2 -> Open Utilities -> WMA: Open Console -> Send SMS...). Pilih nomor device, tentukan nomor port yang sudah ada pada PushRegistry, masukkan pesan dan klik "Send": Pengembangan Perangkat Mobile 12

AMS akan menerima koneksi yang datang dan menanyakan konfirmasi selanjutnya kepada user: Pengembangan Perangkat Mobile 13

Ini adalah aplikasi MIDlet, dijalankan melalui Push Registry (melalui pesan SMS masuk): Pengembangan Perangkat Mobile 14

Ini adalah aplikasi kita yang dijalankan melalui Push Registry (socket pada port 1234). Untuk menjalankan aplikasi MIDlet dengan cara ini, layar console dan ketik "telnet localhost 1234". Pengembangan Perangkat Mobile 15

import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import java.io.*; import java.util.timer; import java.util.timertask; import javax.microedition.io.*; public class PushMidlet extends MIDlet implements CommandListener{ private Command exitcommand; private Form form; private StringItem textfield; private Display display; private String[] connections; public PushMidlet() { exitcommand = new Command("Exit", Command.EXIT, 1); textfield = new StringItem("Status", ""); form = new Form("Push via sms message"); form.addcommand(exitcommand); form.append(textfield); public void startapp() { connections = PushRegistry.listConnections(true); if (connections!= null && connections.length > 0){ textfield.settext( "Launched via Push Registry: " + connections[0]); display = Display.getDisplay(this); form.setcommandlistener(this); Pengembangan Perangkat Mobile 16

display.setcurrent(form); public void pauseapp() { public void destroyapp(boolean unconditional) { public void commandaction(command c, Displayable d) { if (c == exitcommand) { notifydestroyed(); public void settext(string text){ textfield.settext(text); Pengembangan Perangkat Mobile 17

11.4 Latihan 11.4.1 Time Midlet Buatlah sebuah aplikasi MIDlet yang menampilkan tanggal dan waktu hari ini dan terupdate setiap detik. Gunakan Timer untuk melakukan update dan StringItem untuk menampilkan tanggal dan waktu. Pengembangan Perangkat Mobile 18