View
106
Download
8
Category
Preview:
Citation preview
Menyimpan Data ke SQLite dengan Adobe AIR di Android
Sebelum dimulai, sebaiknya persiapkan beberapa software berikut :
Adobe Flash CS 5.5 atau CS 6
Android SDK
Langkah-langkah pembuatan :
1. Buat sebuah dokumen baru, dengan mengklik menu File > New / Ctrl+N.
2. Pilih AIR for Android, lalu tekan OK.
3. Simpan dengan nama SQLite.fla
4. Buat 3 buah kotak, dengan rectangle tool , tetapi sebelumnya pilih warna yang diinginkan
di color picker . Maka akan jadi seperti ini :
5. Ubah warna fill yang sebelumnya jingga, menjadi warna putih.
6. Klik pada Text Tool , maka akan muncul Panel Properties. Jika Panel Properties tidak
muncul, tekan Ctrl + F3 untuk menampilkannya. Jika sudah muncul, pilih Static Text.
7. Berikan masing-masing teks yang diinginkan dengan menggunakan Text Tool . Sesuaikan
teks dengan gambar di bawah ini.
8. Gunakan Selection Tool , dan select / pilih salah satu tombol, misalkan kita memilih tombol
simpan.
9. Klik kanan pada bagian yang terseleksi / terpilih, lalu pilih Convert To Symbol.
10. Maka akan muncul dialog seperti berikut ini. Tuliskan “Tombol Simpan”. Jangan Lupa pilih Type-
nya Button. Lalu tekan tombol OK
11. Sekarang kita telah membuat sebuah Button, button yang barusan kita buat tadi, akan muncul di
library. Library dapat dibuka dengan menekan F11.
12. Lakukan hal yang sama (poin 8 s/d 10) dan terapkan pada 2 tombol lainnya, sehingga di library
menjadi seperti ini.
13. Sekarang kita kembali ke stage. Klik tombol simpan.
14. Maka akan terbuka panel Properties (Ctrl + F3), isikan “simpanBtn” pada Instance Name.
15. Klik tombol load.
16. Isikan “loadBtn” pada Instance Name.
17. Klik tombol keluar.
18. Isikan “keluarBtn” pada Instance Name.
19. Sekarang buat teks dengan Text Tool, jadikan seperti di bawah ini :
Instance Name : “teksDisplay”, Behavior : Multiline, dan jangan lupa ganti sebagai Input Text
20. Agar font bisa tampil di Smartphone yang tidak terinstall font khusus, maka kita harus meng-
embed-kan font kita sendiri. Masih di panel properties dari teksDisplay tekan Tombol Embed.
21. Maka akan tampil dialog Font Embedding, pilih Uppercase, Lowercase, Numerals, dan
Punctuation. Jika sudah selesai, tekan Tombol OK.
22. Jangan lupa gunakan warna yang berbeda dengan background, misal warna hitam :
23. Agar batas teks kelihatan, klik tombol ini agar kotak terlihat.
24. Sekarang waktunya untuk melakukan scripting.
Klik frame 1 (lingkaran merah),
25. Lalu tekan F9, maka akan muncul Panel Actions.
26. Ketikkan script berikut.
import flash.events.*;
import flash.filesystem.*;
import flash.data.*;
import flash.text.*;
//nama untuk folder penyimpanan
var appName:String = 'CobaSQLite';
//koneksi ke SQLite
var sqlCon:SQLConnection = new SQLConnection();
var sqlExec:SQLStatement = new SQLStatement();
//Folder dan Nama File Database
var dbDirFile:File;
//Hanya nama folder
var dbDir:File;
//digunakan untuk menyimpan data dari database.
var gamedata:Object;
//fungsi ini dijalankan ketika start
inisialisasiAplikasi();
function inisialisasiAplikasi(){
//Membuka database databaseku
openDatabase("databaseku");
updateFrame()
}
function updateFrame():void {
sqlquery("SELECT * FROM gamedata");
teksDisplay.text = String(gamedata[0].teks);
}
function openDatabase(datebaseName:String){
dbDirFile = File.desktopDirectory.resolvePath(appName+"/"+datebaseName +
".db");
dbDir = File.desktopDirectory.resolvePath(appName);
if(dbDir.exists){
//Jika database ada, maka buka database tersebut
sqlCon.open(dbDirFile);
}else{
//Jika database belum ada, maka buat baru
dbDir.createDirectory();
sqlCon.open(dbDirFile);
sqlquery("CREATE TABLE gamedata(teks TEXT)");
sqlquery("INSERT INTO gamedata(teks) values('')");
}
}
//fungsi ini untuk melakukan query SQL
function sqlquery(sqlQuery:String) {
sqlExec.sqlConnection = sqlCon;
sqlExec.text = sqlQuery;
sqlExec.addEventListener(SQLEvent.RESULT, sqlResultHandler);
sqlExec.addEventListener(SQLErrorEvent.ERROR, errorHandler);
sqlExec.execute();
}
//fungsi ini untuk mengolah data yang sudah berhasil di query.
function sqlResultHandler(e:SQLEvent) {
var result:SQLResult = sqlExec.getResult();
gamedata = result.data
sqlExec.removeEventListener(SQLEvent.RESULT, sqlResultHandler);
sqlExec.removeEventListener(SQLErrorEvent.ERROR, errorHandler);
}
//fungsi ini untuk mengatasi error ketika query dilakukan.
function errorHandler(event:SQLErrorEvent):void {
trace("Error occured while executing the statement.");
sqlExec.removeEventListener(SQLEvent.RESULT, sqlResultHandler);
sqlExec.removeEventListener(SQLErrorEvent.ERROR, errorHandler);
}
//Memberikan event klik untuk tombol
simpanBtn.addEventListener(MouseEvent.CLICK, simpan);
function simpan(e:MouseEvent){
sqlquery("UPDATE gamedata SET teks = '"+teksDisplay.text+"' WHERE teks is
not null");
updateFrame();
}
//Memberikan event klik untuk tombol
loadBtn.addEventListener(MouseEvent.CLICK, loaded);
function loaded(e:MouseEvent){
updateFrame();
}
//Memberikan event klik untuk tombol
keluarBtn.addEventListener(MouseEvent.CLICK, keluar);
function keluar(e:MouseEvent){
//action untuk keluar aplikasi
NativeApplication.nativeApplication.exit(0);
}
Recommended