AIR cho Android – Phần 1

Hiện nay các ứng dụng Flash đã có thể hoạt động trên điện thoại Android. Bắt đầu từ Flash CS5, Adobe cung cấp cho những người phát triển Flash 1 công cụ là “AIR for Android” để làm các sản phẩm cho Android. Các sản phẩm AIR cho Android chỉ có thể được viết bằng ActionScript3. Khi hoàn thành, các sản phẩm này sẽ được xuất ra dưới dạng các file *.apk, là các định dạng cài đặt cho điện thoại Android và có thể cài vào máy điện thoại Android để hoạt động. Hiện nay mới chỉ có các máy Android 2.2 (Froyo) trở lên mới có hỗ trợ Adobe AIR. Bài hướng dẫn dưới đây sẽ giới thiệu về việc dùng AIR for Android để tạo database (sqlite) và điền thông tin, dữ liệu vào database.

Yêu cầu: tạo database lưu tên và số điện thoại, thông tin nhập vào từ Flash.

– Trước hết ta phải xác định là dùng Flash CS5. Sau đó tạo 1 document từ Templates “AIR for Android”. Trên stage cần 2 input text “name_txt” và “tel_txt” để nhập dữ liệu và 1 button “add_btn” để thực hiện.

– Code:

stop();
//Đừng quên import flash
import flash.filesystem.File;
import flash.data.*;
import flash.events.*;
import flash.display.*;
import flash.errors.*;
import flash.text.*;
import flash.trace.Trace;
import flash.ui.*;
 

tel_txt.restrict = "0-9";
name_txt.text = tel_txt.text = "";
//tạo kết nối sql mới
var conn:SQLConnection= new SQLConnection();
//addEventListener cho SQLEvent
conn.addEventListener(SQLEvent.OPEN, openHandler);
//tạo database nếu chưa có
var dbFile:File = File.applicationDirectory.resolvePath("myDB.sqlite");
conn.openAsync(dbFile);

function openHandler(event:SQLEvent):void
{
//tạo sql statement mới
var sql:SQLStatement=new SQLStatement();
//thiết lập statement để kết nối database
sql.sqlConnection = conn;
//tạo bảng nếu chưa có
sql.text= "CREATE TABLE IF NOT EXISTS contact(" +
"_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"contact_name TEXT, " +
"telefon INTEGER)";
//gọi execute
sql.execute();

}
//button add_btn
add_btn.addEventListener(MouseEvent.CLICK, adder);
function adder(e:MouseEvent):void
{

insert_fn();
}
//điền thông tin vào bảng
function insert_fn()
{

//tạo sql statement variable mới
var sql:SQLStatement=new SQLStatement();
sql.sqlConnection = conn;
//nhập thông tin từ input text vào bảng
sql.text =  "INSERT INTO contact(contact_name, " +
"telefon)" +
"VALUES(@contact_name, " +
"@telefon)";
//để insert variables vào sql dùng parameters
sql.parameters["@contact_name"] = name_txt.text;
sql.parameters["@telefon"] = tel_txt.text;
sql.execute();
name_txt.text = tel_txt.text = "";
trace("đã insert giá trị");
}

database “myDB.sqlite” tạo ra sẽ có dạng: 3 cột “_id” , “contact_name” và “telefon”. Bạn có thể dùng Plugin của Firefox “SQLite Manager” để kiểm tra kết quả. Trong phần 2 tôi sẽ giới thiệu cách để lấy dữ liệu từ database hiển thị lên Flash. Mời các bạn xem phần 2 của bài này: AIR cho Android – Phần 2