Konfigurasi J2ME Polish


Framework J2ME Polish menyertakan build.xml yang merupakan build file Apache Ant yang dipakai untuk men-compile dan menjalankan emulator.   Dengan demikian, pada dasarnya, J2ME Polish dapat dipakai pada IDE apa saja asalkan telah mendukung Apache Ant.  Salah satu pengecualian adalah pada IDE NetBeans karena IDE tersebut telah menggunakan Apache Ant untuk menjalankan tugas-tugas standar, sehingga programmer harus memakai file build-netbeans.xml yang akan meng-‘extends‘ task bawaan NetBeans (yang terletak di lokasi nbproject/build-impl.xml).  Bila hal ini menyebabkan perilaku NetBeans menjadi aneh, sebaiknya jangan menggunakan plugin J2ME Polish untuk NetBeans!  Sebaliknya, jalankan build.xml secara manual atau terpisah dari IDE tersebut.  Pada IDE Eclipse, seseorang dapat memilih menu Window, Show View, Others.., kemudian memilih Ant, Ant.  Pada window yang muncul, klik kanan bagian kosong dan pilih Add Buildfiles…, kemudian pilih build.xml bawaan J2ME Polish yang telah di-copy ke folder project sebelumnya.

Tanpa menggunakan plugin, project dapat dibuat seperti membuat project Java ME biasanya.  Bedanya, file build.xml dan resources yang diperlukan harus di-copy secara manual ke folder project yang telah dibuat.  Setelah itu, buka file build.xml dan lakukan perubahan pada file tersebut.

Target <target name=”j2mepolish”> adalah bagian yang paling sering harus diubah.  Pada target ini dapat ditemukan tag <j2mepolish> yang di dalamnya terdapat sejumlah tag lagi, seperti <info>, <deviceRequirements>, <build>, dan <emulator>.

Tag <info> berisi informasi mengenai MIDlet, yang dapat diubah sesuai kebutuhan, misalnya:

<info
  name="Latihan MIDlet"
  version="1.0.0"
  description="Latihan pertama saya"
  vendorName="SolidSnake"
  infoUrl="https://thesolidsnake.wordpress.com"
  jarName="latihan.jar"
  jarUrl="${polish.jarName}"
  copyright="Copyright 2011 SolidSnake."
/>

Informasi yang ada di tag <info> nantinya akan mempengaruhi isi file JAD yang dihasilkan.  Sebagai catatan, file JAD adalah file teks yang berisi informasi mengenai aplikasi, yang akan di-download oleh pengguna sebelum men-download file JAR.

Tag <deviceRequirements> merupakan salah satu kelebihan memakai J2ME Polish!!  Dengan adanya tag ini, kita dapat menentukan target perangkat mobile dari aplikasi.  J2ME Polish memiliki sejumlah besar daftar perangkat yang tersimpan di file vendors.xml, devices.xml, dan capabilities.xml.  Ketiga file ini telah terdapat dalam file enough-j2mepolish-build.jar.  Untuk melihat ketiga file ini, buka file enough-j2mepolish-build.jar dengan program yang dapat membaca arsip zip.  Bila daftar yang ada dinilai masih kurang, seseorang dapat menambahkan perangkat baru di file custom-devices.xml.

Di dalam tag <deviceRequirements>, terdapat satu atau lebih tag <requirement>yang menjadi persyaratan bagi perangkat yang dapat menjalankan aplikasi ini.  Cara yang paling gampang adalah menyamakan Identifier dari perangkat, seperti yang terlihat di:

<deviceRequirements>
  <requirement name="Identifier" value="Generic/AnyMidp1Phone" />
</deviceRequirements>

Jika ingin platform yang lebih spesifik, nilai value pada Identifier dapat diganti menjadi seperti “Nokia/Series40E3”, “Sony-Ericsson/JavaPlatform7”, dan sebagainya.  Nilai ini harus sesuai dengan yang ada di vendors.xml dan devices.xml.

Lalu apa yang membuat <deviceRequirements> berguna?  Tag ini memiliki atribut if dan unless, sehingga seseorang bisa mengatur deviceRequirement apa saja yang aktif berdasarkan property Ant.  Misalnya, jika terdapat konfigurasi seperti:

<deviceRequirements if="untukNokiaS40Saja">
  <requirement name="Identifier" value="Nokia/Series40E3" />
</deviceRequirements>
<deviceRequirements if="untukSEJP7Saja">
  <requirement name="Identifier" value="Sony-Ericsson/JavaPlatform7" />
</deviceRequirements>

maka jika <property name=”untukNokiaS40″ value=”true” /> dipanggil sebelumnya, maka hanya deviceRequirements tersebut saja yang aktif.  Dengan demikian, seseorang bisa membuat target seperti “jalankanNokia“, “jalankanSonyEricson“, dan sebagainya, sehingga proses pengembangan aplikasi yang sama untuk banyak vendor berbeda menjadi mudah.

Tag <build> akan men-compile dan membuat file JAR dari kode program.  Tag ini memiliki sejumlah elemen seperti <midlet>, <variables>, <resources>, <obfuscator>, dan lainnya.  Yang harus diubah adalah tag <midlet> dimana programmer harus menentukan class MIDlet dan nama MIDlet.  Satu hal yang berguna dan tidak ditemui pada IDE standar adalah tag <midlet> juga mendukung atribut if.  Ini berarti seseorang dapat menentukan MIDlet apa saja yang akan menjadi bagian dari JAR berdasarkan kondisi tertentu!  Sementara pada IDE seperti NetBeans dan Eclipse, seluruh MIDlet dalam proyek yang sama akan di-bundle menjadi satu kesatuan, tanpa pengkondisian tertentu.

Terakhir, untuk menjalankan emulator, tambahkan tag <emulator>.  Tag ini sangat sederhana, hanya terdiri dari atribut seperti wait, securityDomain, enableProfiler, enableMemoryMonitor, dan sebagainya.  Perlu diingat bahwa programmer TIDAK menentukan secara manual emulator apa yang akan dijalankan.  J2ME Polish secara otomatis menentukan emulator yang akan dijalankan berdasarkan pengaturan di deviceRequirements.  Pada banyak kasus, J2ME Polish akan menjalankan MicroEmulator yang sudah ter-install bersama dengannya.  MicroEmulator adalah emulator JME yang berjalan pada Java Standard Edition.

Bila tidak ingin memakai MicroEmulator, melainkan emulator bawaan Java ME Platform SDK, gunakan Identifier seperti Generic/AnyMidp1Phone pada deviceRequirements.  Perlu diingat bahwa Java ME Platform SDK mungkin akan menolak menjalankan JAR yang telah mengandung file-file class J2ME Polish karena memiliki ukuran yang besar, di atas 1 MB.  Untuk mengatasi permasalahan ini, masuk ke direktori instalasi Java ME Platform SDK 3.0, kemudian buka direktori runtimes, lalu cldc-hi-javafx, dan kemudian buka direktori bin.  Edit file jwc_properties.ini yang terdapat pada direktori tersebut dengan notepad atau editor lainnya.  Gunakan fitur search untuk mencari tulisan system.jam_space, kemudian ganti nilai 1000000 menjadi nilai yang lebih besar.

Setelah itu, tutup device-manager.exe melalui icon di taskbar ataupun melaui task manager.  Jalankan kembali target Ant j2mepolish, dan kini emulator Java ME Platform SDK akan menampilkan MIDlet dengan lancar.  Tapi satu hal yang perlu diingat adalah pada kenyataannya, sama seperti emulator yang sebelumnya menolak, perangkat mobile lama mungkin juga tidak mendukung file JAR yang besar.

Perihal Solid Snake
I'm nothing...

Apa komentar Anda?

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: