Browse Category

Android

Database SQLite

Dari dokumentasi yang ada di Phonegap, ternyata menggunakan database web di mana akan ada keterbatasan besarnya data (max 5MB kalau tidak salah), jadi saya ngotot harus belajar pakai SQLite untuk database aplikasi dan sebagai awal belajar koneksi dengan database noSQL seperti couch dll di mobile, meskipun sebenarnya jauh berbeda dalam konsep menurut saya. Selain itu database SQLite dapat diketahui lokasi fisiknya dan dapat dibrowse dengan aplikasi SQLite browser yang ada di pasaran.

Lokasi tempat SQLite berada ada di {root}/data/data/{com.aplikasi.anda}/databases/databaseanda.db terus terang kalau memakai database web seperti dalam tutorial Storage Phonegap, saya belum bisa browse isinya.

Untuk plugin yang saya pakai adalah dari chbrody dapat didownload di GitHub di sini

stepnya :

  1. copy file SQLitePlugin.js ke dalam WWW. pastikan di dalam file index.html juga dimasukkan script untuk referensi ke file tersebut
  2. copy direktory src/com/phonegap/plugin/sqlitePlugin/SQLitePlugin.java ke direktory src (dimerge)
  3. tambahkan line berikut ke dalam plugins.xml :
<plugin name="SQLitePlugin" value="com.phonegap.plugin.sqlitePlugin.SQLitePlugin"/>

sebelumnya pernah mencoba menggunakan plugin dari Davibe, namun gara2 kurang teliti membaca, ternyata plugin tersebut baru hanya untuk IOS. dan Chbrody menyempurnakan untuk Android.

Phonegap : menggunakan CSS di SDCard

Berikut ini cara menggunakan CSS yang disimpan dalam SDCard (atau mungkin bisa juga URL) untuk dapat digunakan dalam aplikasi android yang dibangun dengan Phonegap.

Mudah saja, pada halaman index.html (asumsi link CSS di sini), link CSS langsung menunjuk pada root sdcard :

<href="file:///sdcard/style.css" rel="stylesheet">

Dengan demikian, kita dapat membuat aplikasi android dengan css yang dapat diupdate setiap saat, hanya dengan mengganti css yang baru. Tentunya ada baiknya css tidak diletakkan di root sdcard, tapi di direktori khusus untuk data aplikasi tsb, beserta file2 pendukungnya (images dll).

Ada kekurangannya yaitu karena file yang diload tersebut dianggap data, maka setiap apk dijalankan, maka apk hanya akan cek di cachenya. Jika cachenya ada file tersebut, maka dia tidak akan loading data lagi dari sdcard, sehingga css tidak terupdate. Untuk mengatasi masalah cache, pada file .java di folder src, tambahkan kode berikut

super.clearCache();

di dalam

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}

sehingga jadilah seperti ini :

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.clearCache();
super.loadUrl("file:///android_asset/www/index.html");
}

Oke, itu tadi untuk CSS nya. Lalu bagaimana jika untuk gambar yang dilink di CSS ? Misalnya gambar background. Untuk itu, di CSSnya bisa seperti ini :

.sample {
 background-image: URL("file:///sdcard/bg.jpeg");
}

Menghilangkan default splash screen Phonegap

Ketika membuat aplikasi android menggunakan Phonegap dengan IDE Eclipse, jika lewat wizard di Eclipse atau juga pakai wizardnya MDS Applaud, maka akan kita jumpai splashscreen seperti berikut ini sekitar 1 detik sebelum splashscreen custom atau aplikasi kita jalan.

2012 11 10 07 08 32

Ternyata ada di file AndroidManifest.xml tepatnya berada di <activity>. Tambahkan line berikut sebelum tag >

 android:theme="@android:style/Theme.Black.NoTitleBar"

Jangan lupa membuat direktori Drawable di dalam direktori Res yang berisi gambar icon

demikian


Generate Key Hash

sintaks terminal untuk mengetahui Key Hash untuk aplikasi android yang akan diintegrasikan dengan Facebook. File yang diperlukan adalah android-fb-keytool.jar yang bisa didapatkan di situ :

http://code.google.com/p/android-fb-keytool/

sintaksnya :


java -jar ./android-fb-keytool.jar -keystore [file keystore] -storepass [password] -alias [alias keystore] -keypass [password alias]

outputnya adalah :

Facebook key hash for [nama aplikasi]: [kode key hash]