การเขียนโปรแกรมสำหรับ Android

ก่อนที่จะเขียนโปรแกรมบน Android นั้นจะต้องมีอะไรในเครื่องเราบ้างนั้น อันนี้ผมเขียนแค่หัวข้อหลักๆเท่านั้นนะครับ รายละเอียดเจาะประเด็นเว็บอื่นๆคงมีเยอะแล้ว เอาลิงค์กับ”วิธีติดตั้งสั้นๆเท่านั้น” มาเขียนไว้กันตัวเองลืมครับ
โปรแกรมที่ต้องติดตั้งมีดังนี้

  1. Android SDK มีไว้เพื่อ [Download]
  2. Eclipse เป็น IDE ฟรีสำหรับเขียนโปรแกรม [Download]
  3. ADT Plugin for Eclipse สำหรับเพิ่มความสามารถให้ Eclipse เขียน Android ได้ [Download]
ขั้นตอนการติดตั้ง
  1. ให้ติดตั้ง Android SDK ก่อน ขั้นตอนการติดตั้งไม่ขออธิบายเพราะเหมือนการติดตั้งโปรแกรมทั่วไป Next … จนเสร็จ
  2. ให้ติดตั้ง Eclipse ขั้นตอนไม่ขอบอกตามเหตุผลข้อที่ 1
  3. ติดตั้ง Eclipseเสร็จแล้วเข้าที่เมนู Help > Install New Software…. จะมีหน้าต่างใหม่ขึ้นมา
  4. ให้กดกุ่ม Add แล้วใส่ชื่อ “ADT Plugin” และ Location : https://dl-ssl.google.com/android/eclipse/
  5. รอสักครู่จะมี Checkbox ให้เลือกและกด Next … จนเสร็จ จากนั้นโปรแกรมก็จะติดตั้ง ADT Plugin ให้และ restart Eclipse
  6. ต่อมาให้ Configuring ADT Plugin โดยเข้าที่เมนู Window > Preferences…
  7. เลือก Android ใน Panel ด้ายซ้าย
  8. จากนั้นกรอก SDK Location หรือ Click Browse เพื่อเลือกโฟลเดอร์ที่ตั้ง SDK ที่ Download มาติดตั้งไว้ในข้อที่1
  9. กดปุ่ม Apply และกดปุ่ม OK
  10. สังเกตจะมี icon android อยู่ตรง Toolbar หรือเข้าเมนู Window > Android SDK and AVD Manager ถ้าคลิกแล้ว SDK ทำงานก็น่าจะติดตั้งเสร็จแล้วครับ



---------------------------------------------------------------------------------------------------

หลังจากที่เราได้ สำเร็จ ในการสร้างเครื่องมือที่ใช้ในการพัฒนาแอนดรอยด์ บน เครื่องของเราเป็นที่เรียบร้อยแล้ว มาวันนี้ เราจะมาลองเขียนโปรแกรมสำหรับแอนดรอยด์แบบง่ายๆ และ ทดสอบบน AVD ที่เราได้สร้างขึ้นไว้กัน

โปรแกรม HelloWorld

เปิด eclipse ออกมาเลยครับ




สร้างโปรเจ็คแอนดรอยด์ ออกมาก่อน

ไปที่ New > other



เลือก android Project



จะได้หน้าต่าง New Android Project แบบนี้
ที่ Project Name ผมใช้ชื่อ HelloWorld



ผมเลือก Build Target ที่ Android 2.3.3 (คือ AVD ที่เราสร้างขึ้น เป็น android 2.3.3 Gingerbread)



ที่ Application Info
Application Name ผมใช้ HelloWorld
Package Name ผมใช้ com.android.HelloWorld
Create Activity ผมใช้ MainActivity
และสุดท้าย Minimun SDK ผมใช้ 10
เสร็จแล้วคลิก Finish เลยครับ



เสร็จแล้ว โปรแกรม eclipse จะ gen ตัวไฟร์ และ โฟวเตอร์ ต่างๆให้แบบนี้



เรามาลอง ดับเปิลคลิกที่ ไฟร์ MainActivity.java ครับจะเห็นโค้ด ที่ eclipse ทำการ gen ให้



ลองทดสอบโค้ด บน AVD

สะดวกครับ เพราะเราได้สร้าง AVD ไว้ทดสอบตั้งแต่ ตอนที่แล้ว มองหาไอคอน Run แบบนี้



Run As อะไร ?
เรากำหนดให้ Run บน Android Application



ตัว AVD จะบูท ขึ้นมา



ได้มาละ โปรแกรม HelloWorld ของเรา












---------------------------------------------------------------------------------------

จะใช้ฐานข้อมูล SQLite ต้องมีอะไร ?

  • ส่วนเชื่อมต่อกับฐานข้อมูล SQLite
  • ส่วนเพิ่ม , แก้ไข และ ลบ ฐานข้อมูล
ตรงนี้เข้าใจยากเรามาลองทำแอนเชื่อมต่อฐานข้อมูล SQLite กัน โดยเราจะทำแอป ที่ชื่อว่า LearnEasySQLite1 โดยประกอบไปด้วย ไฟล์จาวา 3 ไฟล์
  1. MySQLiteHelper จะ extend มาจาก class SQLiteOpenHelper ทำหน้าที่ สร้างตาราง , สร้างฐานข้อมูล หรือแม้นแต่การ Upgrade ฐานข้อมูล (ส่วนนี้ยังไม่ได้รีวิวนะครับ รอไว้ตอน 2)
  2. easyDbAdapter ส่วนนี้ทำหน้าที่ เพื่ม Data ไปที่ฟิว ต่างๆ ของตาราง
  3. MainActivity ส่วนนี้ทำหน้าที่ Random ค่า 1-3 โดยค่าที่ 1 แทน String "Random1" ไปเรื่อยๆจนถึง Random3 ทำให้เกิด Data เมื่อทำการเปิด Activity (จะได้มีค่า Data ไปพิวในตารางครับ)

แอป LearnEasySQLite1





เปิด eclipse ออกมา แล้ว สร้าง Project Android ที่ชื่อว่า LearnEasySQLiteData1 ซึ่งใช้ Package app.androidthai.LearnSQLiteData1 ในส่วนของ Build Target ตามใจครับ 1.5-4 ก็ได้ (ผมใช้ แอนดรอยด์ 2.33) finish เพื่อ gen ค่า สำหรับ หลายๆท่าน ที่ต้องการโหลด SourceCode ไป Import เข้าไปใน eclipse สามารถไปโหลดได้จาก http://androidthai.in.th/download-code-android.html นะครับ ง่ายดี (แต่ไม่แนะนำ อย่างให้ลอง โค้ดดิงเอง)



ตอนแรกคุณจะมีแค่ MainActivity นะครับ ให้สร้าง Class เพื่อ 2 คลาส คือ
  • MySQLiteHelper
  • easyDbAdapter

MySQLiteHelper

ทำหน้าที่เชื่อมต่อ กับฐานข้อมูล SQLite โดยการ extend คลาส SQLiteOpenHelper เราลองสร้างขึ้นมาตามโค้ดข้างล่าง



ส่วนของการ extends SQLiteOpenHelper




ค่าคงที่ต่างๆ ผมกำหนดให้ ฐานข้อมูลผมชื่อ easydata มีเวอร์ชั่นเป็น 1



มีโครงสร้างของตาราง แบบนี้



ถ้าเรานำ ฐานข้อมูล SQLite ของเราไปเปิดใน SQLite Database Browser (ใครยังไม่มีในเครื่องไป ติดตั้งจาก ที่นี่ ) จะได้หน้าตาของ Table แบบนี้




โดยโค้ดกำหนดหน้าที่ว่า ถ้า ไม่สามารถตรวจพบ ฐานข้อมูล SQLite ที่ชื่อว่า easydata ให้ทำการสร้างใหม่ ตามรูปแบบ DATABASE_CREATE ที่เรากำหนด



ต่อมาดู easyDbAdapter กันบ้าง




ค่าคงที่ต่างๆ



ส่วนของการพิว ข้อมูลไปที่ Table




และสุดท้ายมาดูที่ MainActivity




ส่วนที่ทำหน้าที่ สุ่มค่า Random1 - 3 ไปเก็บในตาราง เวลาเปิด Activity



ก่อนที่จะทำการทดสอบ โค้ด เราลองมาดูที่อยู่ของ ฐานข้อมูล SQLite ที่ชื่อว่า easydata ที่เราสร้างขึ้น เปิด DDMS ที่ File Exploer ไปดูที่ Data ใน Package app.androidthai.LearnSQLiteData1 จะยังไม่มี ฐานข้อมูล SQLite เกิดขึ้น



ไม่มี



แต่เราเมื่อลองทดสอบโค้ดด้วย AVD สักครั้ง หรือ สองครั้ง





และลองเข้าไปดูใน DDMS ใหม่ จะเห็นมีการสร้าง ฐานข้อมูล SQLite ที่ชื่อว่า easydarta เกิดขึ้น



ผมลอง Get Device File ไปไว้ที่หน้า Desktop แล้วเปิดด้วย SQLite Database Browser





ลองดู Database Structure




หรือ Browse Data ดู เห็นไหมครับ เราสามารถ สร้าง , เชื่อมต่อ ฐานข้อมูล SQLite ได้แล้ว ครั้งหน้าเรามาลอง เพื่มฐานข้อมูลโดยการ key ผ่าน EditText บ้างครับ





Credit : http://programming-android-phone.blogspot.com/

Previous
Next Post »