Pemrograman Aplikasi Bergerak
Class yang berkaitan dengan RMS RecordStore Merupakan Class/Objek penampung data. RecordEnumeration Merupakan Class/Objek untuk memanggil data. RecordFilter Merupakan Interface untuk menyeleksi/memfilter data RecordComparator Merupakan Interface untuk mengurutkan data
RecordStore Jika menggunakan data tanpa menyeleksi/ memfilter, dan tanpa mengurutkan, maka RecordStore saja sudah cukup. Metode untuk mengatur RecordStore: openRecordStore(String namaRS, boolean buatJikaPerlu) Membuat/membuka RecordStore (Metoda ini static) closeRecordStore() Menutup RecordStore deleteRecordStore(String namaRS) Menghapus RecordStore (Metoda ini static)
RecordStore Mengolah data/record pada RecordStore dengan: addRecord(byte[] data, int offset, int jumlahByte) offset biasanya diisi nol, jumlahByte biasanya data.length. deleteRecord(int recordID) Menghapus record dengan ID tertentu. (ID tidak bisa dipakai lagi) setRecord(int recID, byte[] newData, int offset, int jumByte) Mengupdate record berID recID dengan newData. Offset biasanya bernilai 0 dan jumByte biasanya newData.length getRecord(int recordID) Mengembalikan data yang ada pada recordID yang diberikan. getRecord(int recID, byte[] penampung, int offset) Memasukkan data pada recID ke dalam penampung. Offset biasa diisi nol. Fungsi ini mengembalikan jumlah byte data yang diambil.
RecordStore Metoda lain yang dapat berguna : getNextRecordID() Mengembalikan recordID untuk data baru berikutnya. getNumRecords() Mengembalikan jumlah record yang ada di dalam RecordStore.
Tips menggunakan RecordStore(1) RecordStore tidak menggunakan constructor, melainkan menggunakan OpenRecordStore Tutup RecordStore jika tidak dipakai untuk menghemat memori HP. Untuk mengkonversi String ke bentuk byte[], gunakan String.getBytes() Hati hati menggunakan deleteRecordStore karena akan menghapus / mengosongkan RecordStore Perlu diperhatikan bahwa recordID dimulai dari 1, bukan 0 seperti pada indeks array.
Contoh Program Persiapan: Buat project dengan nama demoRMS1 Buat MIDlet dengan nama MidRMS Tambahkan constructor pada MidRMS Buat Form frm1 dengan judul "Demo RMS" Tampilkan Form.
Hasil persiapan
Buat RecordStore: mahasiswa Buat/buka RS Tambahkan try-catch Hasil menambahkan try-catch
Kita akan mengolah data mahasiswa di sini Menutup RecordStore Setelah membuat/membuka RecordStore, pastikan kita menutupnya agar tidak boros memori. Tambahkan perintah menutup RecordStore di dalam blok try-catch sebelumnya agar tidak terlalu banyak try-catch. Kita akan mengolah data mahasiswa di sini
Mengubah String menjadi byte[] Menambahkan data ke dalam RS ID record berikutnya NPM dan nama contoh Menyambung String Mengubah String menjadi byte[] Menambahkan data ke dalam RS
Menjalankan Ketika dijalankan di emulator, data pada RMS akan hilang begitu aplikasi ditutup karena program tidak diinstal. Agar program diinstal, klik "run project via OTA" Pilih continue ketika ditanya “Are you sure you want to install …”
Beri “enter” untuk baris berikutnya Tampilkan data pada StringItem. Menampilkan data Coding sebelumnya Membuat StringItem Membuat String kosong Loop pada semua data** Byte array penampung Ambil data Sambung data ke string Beri “enter” untuk baris berikutnya Tampilkan data pada StringItem. Coding sebelumnya ** Loop seperti ini tidak boleh digunakan untuk data yang dinamis. Jika salah satu data dalam recordStore dihapus, maka loop seperti ini akan error.
Mengubah isi data Coding sebelumnya Data baru Ubah data
Menghapus data Coding sebelumnya Hapus data Coding sebelumnya
Jika data dengan ID 3 dihapus, maka saat data diambil di : int panjang = rs.getRecord(i, tarik, 0); Saat nilai i=3, program akan error karena terjadi InvalidRecordIDException, karena ID 3 tidak lagi ada. Agar program tidak error, kita lewatkan dulu ID 3:
Menghapus/mengosongkan RecordStore Untuk menghapus/mengosongkan RecordStore, gunakan perintah: RecordStore.deleteRecordStore("mahasiswa");
RecordEnumeration Untuk memanggil, mengurutkan serta mensortir data, dapat menggunakan RecordEnumeration. Caranya seperti di samping.
RecordEnumeration Pada baris: re = rs.enumerateRecords(null, null, false); Parameter fungsi enumerateRecords antara lain: RecordFilter, digunakan untuk menyeleksi/memfilter data RecordComparator, digunakan untuk mengurutkan data boolean KeepUpdated, menentukan apakah RecordEnumeration perlu disesuaikan selalu dengan data pada RecordStore.
Thank You For Your Attention Reminders: Dokumentasi class-class (properties, method dan contoh program) yang dipakai di Java ME dapat diakses lewat menu documentation pada start menu di folder WTK atau Java ME SDK. (StartJava(TM) ME Platform SDK 3.0Documentation) (StartSun Java (TM) Wireless Toolkit 2.5.2 for CLDC Documentation)