Top Banner
บทที 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)
18

บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 ·...

Dec 31, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

บทท 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: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

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: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

35

และระบชอแอพวา My Application กจะไดชอแพกเกจเปน com.example.myapplication โดยการตงชอแพจเกจในลกษณะนจะสามารถชวยลดโอกาสซ ากนไดของชอแอพฯ 5. ส าหรบชอง Project locationใหระบโฟลเดอร(folder) ทตองการใชจดเกบไฟลตางๆ ของโปรเจกตน ในทนจะใช รปแบบตามน หรอ สามารถเปลยนสงทอย(path) ได เชน D:\MyApplication 6. คลกNext เพอไปยงหนาถดไป

หนาจอนส าหรบระบวาตองการสรางแอพฯทรนบนอปกรณประเภทใดบาง รวมทงเวอรชนขนต าของแอน

ดรอยดทสามารถรนแอพฯของคณได โดยยงระบเวอรชนต าเทาใดกจะยงมจ านวนอปกรณทรนแอพของคณ

ไดมากขนเทานน

Page 4: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

36

หนาจอนส าหรบเลอกรปแบบของแอกทวตทตองการ โดยแอกทวต (Activity) กคอหนาจอ (UI screen) ของแอพ ซงแอนดรอยดสตดโอเตรยมแอกทวตส าเรจรปมาใหหลายรปแบบ 7.คลกเลอก Empty Activity เพอสรางแอกทวตทเปนหนาจอวางๆ 8. คลป next เพอไปยงหนาจอถดไป

Page 5: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

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: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

38

การก าหนดโทรศพทจ าลอง (emulator) เพอการทดลองเรยกโปรแกรมท างาน

การพฒนาแอพฯแอนดรอยดนน ไมจ าเปนตองมเครองแอนดรอยดจรงเพอทดสอบการท างานของแอพฯ เนองจากเครองมอแอนดรอยด(SDK) ไดเตรยมโทรศพทแอนดรอยดจ าลอง (Android Virtual Device AVD) มาใหแลว มนคอโปรแกรมทจ าลองการท างานของเครองแอนดรอยจรงขนมาในคอมพวเตอรของเรา โดยเราสามารถก าหนดเวอรชนของแอนดรอยดทรนรวมถงคณสมบตอนๆ เชนหนาจอ และความจของ SD card ได โดยกอนทเราจะแอพฯดวยโทรศพทจ าลอง เราจ าเปนตองสรางโทรศพทแอนดรอยดจ าลองขนกอน การจดการและตงคาโทรศพทแอนดรอยดจ าลอง บนแอนดรอยดสตดโอนนสามารถเปดหนาตางส าหรบการจดการและตงคาโทรศพทแอนดรอยดจ าลองดวยตวจดการจดการและตงคาโทรศพทแอนดรอยดจ าลอง(AVD Manager) ไดอย 2 วธคอ กดป มไอคอนลดทอยแถบขางบนของหนาจอโปรแกรม

Page 7: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

39

หรอเลอกไปท Tools > Android > Android Device Monitor

ตวอยางหนาตางตวจดการฯ

ในทนจะมการสรางโทรศพทแอนดรอยดจ าลองใหม 1 รายการ ซงจ าลองมอถอ Nexus 5 ทรนแอนดรอยด 5.0(Lollipop) ดวยการกดเลอกท Create Virtual Device... กจะมหนาตางส าหรบเลอกอปกรณทจะสราง โดยจะมการแยกหมวดหมใหดวยวาเปน TV, Phone, Wear หรอ Tablet ดงรปท .....

Page 8: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

40

เลอกเปน Nexus 5 แลวกดป ม Next

Device Name ชอของโทรศพทแอนดรอยดจ าลองทจะสราง Screen > Screen size ขนาดหนาจอ หนวยเปนนว Screen > Resolution ความละเอยดของหนาจอ หนวยเปนพกเซล Memory RAM ในโทรศพทฯจ าลอง(ไมตองก าหนดเยอะ เพราะจะรบกวนจากหนวยความจ า(RAM) จากคอมทใชนนเอง) Input ก าหนดป ม Input ส าหรบโทรศพทฯจ าลองโดยจดการฯกจะมรายชอเครองใหเลอกประมาณ

Page 9: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

41

หนงอยแลว สามารถกดเลอกไดเลย แตถาตองการก าหนดคาเองกใหกดทป ม New Hardware Profile กจะมหนาตางก าหนดคาขอมลโทรศพทฯจ าลอง (Device Profile)ให

เมอเสรจแลวกกดป ม Finish เพอสรางเปนโทรศพทฯจ าลองกจะแสดงใหเหนในรายชอใหเลอกสรางไดแลว

ตอไปเลอกวาเราจะใชแอนดรอยดรน(version)อะไร เลอก version แลวกด Next

ส าหรบป ม Import Hardware Profiles จะเปนการสรางขอมลโทรศพทฯจ าลอง จากไฟลทก าหนดคามาใหเรยบรอยแลว จงท าใหสามารถสราง Profile ขนแลวแลวแจกจายไปยงเครองอนๆได ในกรณทตองการคดลอก(clone) แกไข(edit) ลบ(delete) หรอสงออก(export) เปนไฟลเพอไปน าเขา (import) ทเครองอนกเพยงแคคลกขวาทขอมลโทรศพทฯจ าลองตวนนๆ

ส าหรบการโคลนจะเปนการน าขอมลโทรศพทฯจ าลองทมอยแลวมาแกไขนนเอง

Page 10: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

42

เมอเลอกขอมลโทรศพทฯจ าลองตองการไดแลวใหกดป ม Next หนาถดมาจะเปนการเลอกวาโทรศพทฯจ าลอง จะใช System Image เปนแบบไหน ซงจะมใหเลอกตามเวอรชนแอนดรอยดดวย (แนะน าใหเลอกอนทม ABI เปน armeabi-v7a)

อนไหนทมค าวา Downloads ตอทายกหมายความวาเครองนนๆยงไมไดดาวนโหลด System Image ของตวนนๆมา กจะท าการดาวนโหลดมาตดตงใหโดยอตโนมต เมอก าหนด System Image เรยบรอยแลว กจะเปนหนาสรปโทรศพทฯจ าลองทจะสราง

Page 11: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

43

และทส าคญกคอมเมน Startup size and orientation ใหดวย เพอเอาไวก าหนดวาอตราสวนหนาจอทจะแสดงบนคอมพวเตอร เพราะวาโทรศพทฯจ าลองบางตวมหนาจอขนาดใหญมากเชน Nexus 6 ดงนนจงก าหนดไดวาจะใหสเกลทแสดงบนหนาจอคอมเปนเทาไรแทน โดยองหนวย dp ของอปกรณ(Device)ตอ px บนหนาจอคอมฯ

และถากดป ม Show Advanced Settings กจะสามารถก าหนดรายละเอยดปลกยอยของโทรศพทฯจ าลองไดดวย

Page 12: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

44

เมอก าหนดเสรจทงหมดแลวกใหกดป ม Finish กจะเหนโทรศพทฯจ าลองแสดงอยในหนาตวจดการฯ

Page 13: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

45

ถาตองการเปดโทรศพทฯจ าลองขนมา กใหกดป มลกศรสเขยว ถาตองการแกไขขอมลโทรศพทฯจ าลอง ใหมอกครงใหกดป มรปดนสอ และจะมเมนยอยอยในลกศรสเทาอกท ซงทงหมดนตอง Double Click เพอเลอก (คลกทเดยวไมตด)

การเรยกโปรแกรมท างานบนโทรศพทจ าลอง เราสามารถรนแอพฯทสรางขนท างานโดยสงจากเมนแอนดรอยดสตดโอเลอก Run > Run app หลงจากคลกเลอกโปรแกรมจะท างานสกพก ซงอาจใชเวลาพอสมควร

Page 14: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

46

หลกจากนนจะขนหนาตาง ส าหรบเลอกโทรศพทฯจ าลอง ใหเลอกทสรางไวแลวกด Ok

Page 15: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

47

รอสกคร โปรแกรมจะท างาน หนาตางแสดงสถานะการท างานจะแสดงดานลาง แจงการท างานตางๆ

เมอโทรศพทฯจ าลอง แสดงขนมาแลว เราอาจจะตองท าการกดเลอน เพอ unlock screen ทหนา จอ

Page 16: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

48

หลกจากนน เราจะเหน app อยางงาย ชอ My Application แสดงขนมาตามรป

เปนอนเสรจขนตอนการทดสอบการรนแอพฯผานโทรศพทฯจ าลอง

Page 17: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

49

แตถาหากไมมการสรางโทรศพทฯจ าลอง หรอตองการสรางเพมจ าลองมอถอ / แทบเลตรนอน สามารถสรางโทรศพทฯจ าลองขนมาใชงานเพมเตมได โดยเลอก Create Virtual Device..แลวท าการก าหนดคาเหมอนกบการสรางโทรศพทฯจ าลองอนทผานมา

Page 18: บทที่ 3 การเริ่มต้นพัฒนาโปรแกรมpirun.ku.ac.th/~faastwc/Android/ponglang/ready/pdf/6... · 2018-02-07 · การเรียกโปรแกรมท

50

แบบฝกหดทายบท

1. จงใหความหมายของ Android Emulator 2.ใหนสตสราง Android Virtual Device มาซก 3 รน คอ Android 4 ,5, 6 โดยศกษาคมอ การตดตงใหละเอยด 3.จากโจทยขอ 2 ใหนกศกษาสราง AVD Manager พรอมแสดงขอความให ใสชอรหสนกศกษา , ชอนกศกษา ,คณะ , สาขา ,ชอวชา ทง 3 รน android 4 ,5,6