Page 1
บทท 3 การเรมตนพฒนาโปรแกรม สาระบทเรยน
1. การเรมตนสรางโปรเจกต (project) และแอพพลเคชน (application) 2. การก าหนดโทรศพทจ าลอง (emulator) เพอการทดลองเรยกโปรแกรมท างาน 3. การเรยกโปรแกรมท างานบนโทรศพทจ าลอง
การเรมตนสรางโปรเจกต
เนอหาในบทนมวตถประสงคเพอใหนสตเรมฝกพฒนาแอพพลเคชนบนระบบแอนดรอยด (Android)
ได และเปนการเรมตนเรยนรการใชงานเครองมอตางๆ ไปพรอมๆ กน ซงในทนจะเรมสอนการพฒนาแอพ
พลเคชนแสดงขอความ Hello World ซงเปนแอพพลเคชนแรกๆ ทถกใชเปนตวอยางในการพฒนาเบองตน
ของการเขยนโปรแกรมนอกจากนแอพพลเคชน Hello World ยงถกใชเปนตวตรวจสอบการท างานของ
คอมไพเลอร (Compiler)และสวนส าคญตางๆ ของเครองมอทไดตดตงในบททผานมา และยงเปนตวชวยใน
การตรวจสอบขอผดพลาดระหวางการตดตงไอดอ (Integrated Development Environment -IDE) อก
ดวย ดงนนการฝกพฒนาแอพพลเคชนในบทน จงเปนพนฐานส าหรบการพฒนาแอพพลเคชนประยกตใน
ขนสงตอไป ทงนการฝกพฒนาแอพพลเคชนจะเปนการเรยนรดวยตวอยาง ซงผศกษาสามารถพฒนาแอพ
พลเคชนตามขนตอนและสามารถน าไปใชงานไดจรง โดยไมมงเนนถงการอธบายในรายละเอยดเชงลกของ
ก า ร ใ ช ง า น แ ต ล ะ ฟ ง ก ช น น ส ต ส า ม า ร ถ ห า ข อ ม ล เ พ ม เ ต ม ไ ด จ า ก เ ว บ ไ ซ ต ต า ง ๆ เ ช น
http://developer.android.com/
เรมตนสรางแอพพลเคชน
1. เมอจะเรมพฒนาแอพแอนดรอยด อนดบแรกตองสรางโปรเจกตใหมในแอนดรอยดสตดโอ ดงนนให
เรยกโปรแกรมแอนดรอยดสตดโอขนมาท างานซงจะพบกบหนาจอหนาจอ Welcome to Android Studio
(ตอไปเรยกวา หนาจอ Welcome)
Page 2
34
2. คลก Start a new Android Studio project จะปรากฏวนโดว Create New Project
3. ในชอง Application name จะตองตงชอแอพพลเคชน โดยในทนใหพมพค าวา My Application ชอทพมพในชองน คอชอแอพทผ ใชจะเหนเมอเราสงขน Google Play Store 4. ในชอง Company Domain ใหพมพชอโดเมนของเวบไซทของเรา โดยทนใหพมพวา example.com ตามรปกได ชอแพกแกจ (Package name) คอชอทเปน ID ประจ าตวแอพพลเคชน โดยแอพพลเคชนตางๆ จะทชอแพกเกจของแอพฯ ทโปรแกรมก าหนดใหนเกดจาการน าชอโดเมนทก าหนดวา example.com
Page 3
35
และระบชอแอพวา My Application กจะไดชอแพกเกจเปน com.example.myapplication โดยการตงชอแพจเกจในลกษณะนจะสามารถชวยลดโอกาสซ ากนไดของชอแอพฯ 5. ส าหรบชอง Project locationใหระบโฟลเดอร(folder) ทตองการใชจดเกบไฟลตางๆ ของโปรเจกตน ในทนจะใช รปแบบตามน หรอ สามารถเปลยนสงทอย(path) ได เชน D:\MyApplication 6. คลกNext เพอไปยงหนาถดไป
หนาจอนส าหรบระบวาตองการสรางแอพฯทรนบนอปกรณประเภทใดบาง รวมทงเวอรชนขนต าของแอน
ดรอยดทสามารถรนแอพฯของคณได โดยยงระบเวอรชนต าเทาใดกจะยงมจ านวนอปกรณทรนแอพของคณ
ไดมากขนเทานน
Page 4
36
หนาจอนส าหรบเลอกรปแบบของแอกทวตทตองการ โดยแอกทวต (Activity) กคอหนาจอ (UI screen) ของแอพ ซงแอนดรอยดสตดโอเตรยมแอกทวตส าเรจรปมาใหหลายรปแบบ 7.คลกเลอก Empty Activity เพอสรางแอกทวตทเปนหนาจอวางๆ 8. คลป next เพอไปยงหนาจอถดไป
Page 5
37
9. ในชอง Activity Name ใหพมพวา Main Activity เพอก าหนดชอไฟล .java ของแอกทวต ซงจะกลายเปนชอคลาส(class) ในไฟลนนดวย (ชอไฟล .java และชอคลาสในไฟลตองเปนชอเดยวกน ตามกฎ ของภาษา java ) ไฟล .java จะเกบค าสงจาวาทเปนรายละเอยดการท างานในแอกทวตนน 10. ในชอง Layout Name ใหพมพวา Activity_Main เพอก าหนดชอใหกบ layout file ของแอกทวต ซง Layout จะมนามสกล .xml และท าหนาทก าหนดหนา UI ของแอกทวต 11. คลก Finish เพอเสรจการสรางโปรเจกต
หลงจากคลก Finish กจะเขาสหนาจอหลกของแอนดรอยดสตดโอซงเปนสภาพแวดลอมทเราจะใชในการ
พฒนาแอพฯ โดยจะมไดอะลอก Tip of the Day ทแนะน าเคลบลบการใชแอนดรอยดสตดโอปรากฎขนมา
ใหคลกป ม close เพอปดไดอะลอกไป
Page 6
38
การก าหนดโทรศพทจ าลอง (emulator) เพอการทดลองเรยกโปรแกรมท างาน
การพฒนาแอพฯแอนดรอยดนน ไมจ าเปนตองมเครองแอนดรอยดจรงเพอทดสอบการท างานของแอพฯ เนองจากเครองมอแอนดรอยด(SDK) ไดเตรยมโทรศพทแอนดรอยดจ าลอง (Android Virtual Device AVD) มาใหแลว มนคอโปรแกรมทจ าลองการท างานของเครองแอนดรอยจรงขนมาในคอมพวเตอรของเรา โดยเราสามารถก าหนดเวอรชนของแอนดรอยดทรนรวมถงคณสมบตอนๆ เชนหนาจอ และความจของ SD card ได โดยกอนทเราจะแอพฯดวยโทรศพทจ าลอง เราจ าเปนตองสรางโทรศพทแอนดรอยดจ าลองขนกอน การจดการและตงคาโทรศพทแอนดรอยดจ าลอง บนแอนดรอยดสตดโอนนสามารถเปดหนาตางส าหรบการจดการและตงคาโทรศพทแอนดรอยดจ าลองดวยตวจดการจดการและตงคาโทรศพทแอนดรอยดจ าลอง(AVD Manager) ไดอย 2 วธคอ กดป มไอคอนลดทอยแถบขางบนของหนาจอโปรแกรม
Page 7
39
หรอเลอกไปท Tools > Android > Android Device Monitor
ตวอยางหนาตางตวจดการฯ
ในทนจะมการสรางโทรศพทแอนดรอยดจ าลองใหม 1 รายการ ซงจ าลองมอถอ Nexus 5 ทรนแอนดรอยด 5.0(Lollipop) ดวยการกดเลอกท Create Virtual Device... กจะมหนาตางส าหรบเลอกอปกรณทจะสราง โดยจะมการแยกหมวดหมใหดวยวาเปน TV, Phone, Wear หรอ Tablet ดงรปท .....
Page 8
40
เลอกเปน Nexus 5 แลวกดป ม Next
Device Name ชอของโทรศพทแอนดรอยดจ าลองทจะสราง Screen > Screen size ขนาดหนาจอ หนวยเปนนว Screen > Resolution ความละเอยดของหนาจอ หนวยเปนพกเซล Memory RAM ในโทรศพทฯจ าลอง(ไมตองก าหนดเยอะ เพราะจะรบกวนจากหนวยความจ า(RAM) จากคอมทใชนนเอง) Input ก าหนดป ม Input ส าหรบโทรศพทฯจ าลองโดยจดการฯกจะมรายชอเครองใหเลอกประมาณ
Page 9
41
หนงอยแลว สามารถกดเลอกไดเลย แตถาตองการก าหนดคาเองกใหกดทป ม New Hardware Profile กจะมหนาตางก าหนดคาขอมลโทรศพทฯจ าลอง (Device Profile)ให
เมอเสรจแลวกกดป ม Finish เพอสรางเปนโทรศพทฯจ าลองกจะแสดงใหเหนในรายชอใหเลอกสรางไดแลว
ตอไปเลอกวาเราจะใชแอนดรอยดรน(version)อะไร เลอก version แลวกด Next
ส าหรบป ม Import Hardware Profiles จะเปนการสรางขอมลโทรศพทฯจ าลอง จากไฟลทก าหนดคามาใหเรยบรอยแลว จงท าใหสามารถสราง Profile ขนแลวแลวแจกจายไปยงเครองอนๆได ในกรณทตองการคดลอก(clone) แกไข(edit) ลบ(delete) หรอสงออก(export) เปนไฟลเพอไปน าเขา (import) ทเครองอนกเพยงแคคลกขวาทขอมลโทรศพทฯจ าลองตวนนๆ
ส าหรบการโคลนจะเปนการน าขอมลโทรศพทฯจ าลองทมอยแลวมาแกไขนนเอง
Page 10
42
เมอเลอกขอมลโทรศพทฯจ าลองตองการไดแลวใหกดป ม Next หนาถดมาจะเปนการเลอกวาโทรศพทฯจ าลอง จะใช System Image เปนแบบไหน ซงจะมใหเลอกตามเวอรชนแอนดรอยดดวย (แนะน าใหเลอกอนทม ABI เปน armeabi-v7a)
อนไหนทมค าวา Downloads ตอทายกหมายความวาเครองนนๆยงไมไดดาวนโหลด System Image ของตวนนๆมา กจะท าการดาวนโหลดมาตดตงใหโดยอตโนมต เมอก าหนด System Image เรยบรอยแลว กจะเปนหนาสรปโทรศพทฯจ าลองทจะสราง
Page 11
43
และทส าคญกคอมเมน Startup size and orientation ใหดวย เพอเอาไวก าหนดวาอตราสวนหนาจอทจะแสดงบนคอมพวเตอร เพราะวาโทรศพทฯจ าลองบางตวมหนาจอขนาดใหญมากเชน Nexus 6 ดงนนจงก าหนดไดวาจะใหสเกลทแสดงบนหนาจอคอมเปนเทาไรแทน โดยองหนวย dp ของอปกรณ(Device)ตอ px บนหนาจอคอมฯ
และถากดป ม Show Advanced Settings กจะสามารถก าหนดรายละเอยดปลกยอยของโทรศพทฯจ าลองไดดวย
Page 12
44
เมอก าหนดเสรจทงหมดแลวกใหกดป ม Finish กจะเหนโทรศพทฯจ าลองแสดงอยในหนาตวจดการฯ
Page 13
45
ถาตองการเปดโทรศพทฯจ าลองขนมา กใหกดป มลกศรสเขยว ถาตองการแกไขขอมลโทรศพทฯจ าลอง ใหมอกครงใหกดป มรปดนสอ และจะมเมนยอยอยในลกศรสเทาอกท ซงทงหมดนตอง Double Click เพอเลอก (คลกทเดยวไมตด)
การเรยกโปรแกรมท างานบนโทรศพทจ าลอง เราสามารถรนแอพฯทสรางขนท างานโดยสงจากเมนแอนดรอยดสตดโอเลอก Run > Run app หลงจากคลกเลอกโปรแกรมจะท างานสกพก ซงอาจใชเวลาพอสมควร
Page 14
46
หลกจากนนจะขนหนาตาง ส าหรบเลอกโทรศพทฯจ าลอง ใหเลอกทสรางไวแลวกด Ok
Page 15
47
รอสกคร โปรแกรมจะท างาน หนาตางแสดงสถานะการท างานจะแสดงดานลาง แจงการท างานตางๆ
เมอโทรศพทฯจ าลอง แสดงขนมาแลว เราอาจจะตองท าการกดเลอน เพอ unlock screen ทหนา จอ
Page 16
48
หลกจากนน เราจะเหน app อยางงาย ชอ My Application แสดงขนมาตามรป
เปนอนเสรจขนตอนการทดสอบการรนแอพฯผานโทรศพทฯจ าลอง
Page 17
49
แตถาหากไมมการสรางโทรศพทฯจ าลอง หรอตองการสรางเพมจ าลองมอถอ / แทบเลตรนอน สามารถสรางโทรศพทฯจ าลองขนมาใชงานเพมเตมได โดยเลอก Create Virtual Device..แลวท าการก าหนดคาเหมอนกบการสรางโทรศพทฯจ าลองอนทผานมา
Page 18
50
แบบฝกหดทายบท
1. จงใหความหมายของ Android Emulator 2.ใหนสตสราง Android Virtual Device มาซก 3 รน คอ Android 4 ,5, 6 โดยศกษาคมอ การตดตงใหละเอยด 3.จากโจทยขอ 2 ใหนกศกษาสราง AVD Manager พรอมแสดงขอความให ใสชอรหสนกศกษา , ชอนกศกษา ,คณะ , สาขา ,ชอวชา ทง 3 รน android 4 ,5,6