เขียนแอพแอนดรอยด์ตั้งแต่เริ่มต้น ตอนที่ 1 : Introduction with Android Project

Minseo Chayabanjonglerd
Ascend Developers
Published in
6 min readSep 20, 2022

--

มาทำความรู้จักกับ Android การเตรียมตัวในการลงโปรแกรมต่างๆก่อนนะ รวมถึงการสร้างโปรเจกต์แรกไปด้วยกัน

สวัสดีค่ะทุกคน บล็อกนี้เป็น 1 ใน content series สอนการเขียนแอพแอนดรอยด์ตั้งแต่เริ่มต้น จนพอเขียนได้เนอะ เหมาะสำหรับใครที่อยากลองเขียน Android Native เนอะ โดยใน content series ที่ชื่อว่า Basic Android Development จะมีดังนี้

  • Introduction with Android Project
  • Activity
  • Fragment

ในบล็อกนี้เป็นหัวข้อ Introduction with Android Project ทำความรู้จัก Android คร่าวๆสำหรับผู้เริ่มต้นในการเป็นนักพัฒนา Android, ภาษาโปรแกรมมิ่งที่ใช้, Developer Tool ต่างๆที่ต้อง install ลงเครื่อง จบด้วยการทดลองสร้างโปรเจกต์เปล่าๆเพื่อรันลง device จริง หรือ Android Emulator

Android Version

Android version แรกถือกำเนิดขึ้นในปี 2018 ต่อมาเป็นธรรมเนียมของทีม Android ที่จะเรียกชื่อ codename ของ version ต่างๆเป็นชื่อขนม เริ่มตั้งแต่ปี 2019 ที่ Android 1.5 มีชื่อว่า Cupcake, Android 1.6 มีชื่อว่า Donut ไปจนถึง Android 9.0 ที่มีชื่อว่า Pie นั่นเอง

จนมาในปี 2019 ที่เป็น Android 10 ไม่ใช้ชื่อ codename เป็นขนมแล้ว จะใช้เป็นชื่อตัวเลขของแต่ละ version เป็น codename แทนเนอะ

credit : https://www.cellphonedeal.com/blog/the-evolution-of-android

ปัจจุบันในวันที่เขียนบล็อกนี้เป็น Android 13 ที่ stable แล้ว

https://blog.google/products/android/android-13/

ในการปล่อย Android แต่ละ version นั้น จะปล่อยรุ่นทดสอบต่างๆ ดังนี้

https://android-developers.googleblog.com/2022/06/android-13-beta-3-platform-stability.html
  • Developer Previews: เป็นรุ่นทดสอบสำหรับนักพัฒนา
  • Beta Releases: เปิดให้ผู้ใช้ทดสอบผ่าน Android Beta Program
  • Platform Stability: อันนี้ของเริ่มนิ่งหล่ะ เตรียมพร้อมออก final release
  • Final Release: อันนี้ของจริงหล่ะนะ

โดย version ล่าสุดอย่าง Android 13 นั้น จะเป็น API level 33 นั่นเอง

Programming language

การพัฒนา Android Application แบบ native นั้น สามารถใช้ได้ทั้งภาษา Java และ Kotlin ได้เลยนะ ซึ่งในโปรเจกต์ของเราสามารถใช้ร่วมกันได้ทั้งสองภาษาเลย

แต่ . . .

ทางเราแนะนำภาษา Kotlin เนื่องจากเป็นภาษา official นึงในการเขียน Android นั่นหมายความว่า เวลาที่ทาง Android มี feature อะไรใหม่ๆมา จะ support ภาษา Kotlin ก่อนเสมอนั่นเอง

และ Kotlin บน Android ก็เดินทางมาครบ 5 ปี (ในช่วงที่เขียนบล็อกนี้) แล้วนะ

Development Tool

สำหรับ Editor ที่ใช้กัน เราใช้ Android Studio ในการเขียนแอพแอนดรอยด์ โดยตัว Android Studio มีให้ download 2 version คือ

  • Stable Release : เป็นแบบปกติที่เราใช้กันเนอะ ส่วนสเปกเครื่องที่ใช้สามารถดูในเว็บนี้ได้เลย
https://developer.android.com/studio
  • Preview Release : เป็น cannary version ที่ยังไม่ stable ซึ่งจะนำกว่า version ปกติ ตัวไอคอนจะเป็นพื้นหลังสีเหลืองนะ
https://developer.android.com/studio/preview

และทั้งสอง version มันจะมองว่าเป็นคนละโปรแกรมกันนะ

ข้างใน Android Studio จะมี IDE ให้เราอยู่แล้ว ทำให้ผู้เริ่มพัฒนาใช้งานได้ง่ายขึ้น

Create First Project

มาสร้างโปรเจกต์แอนดรอยด์อันแรกของเรากันเถอะ!

หลังจาก download และ install Android Studio แล้ว เรามาสร้างโปรเจกต์แรกของเรากันเถอะ

ก่อนอื่น เปิดโปรแกรม Android Studio ก่อน ในวันที่เขียนบล็อกเป็น Android Studio Chipmunk | 2021.2.1 นะ

กดปุ่ม New Project เพื่อสร้างโปรเจกต์ใหม่

จากนั้นเลือกเป็น No Activity เดี๋ยวเราจะสร้างกันต่อไปเนอะ กดตุ่ม Next

จากนั้นกรอกรายละเอียดต่างๆเกี่ยวกับแอพของเรา

  • Name : ตั้งชื่อแอพพลิเคชั่นของเรา
  • Package name : เป็น Unique Name ของแต่ละแอพ แนะนำอย่าใช้ com.example เพราะเวลาอัพแอพขึ้น play store จริงจะมีปัญหานะในเรื่องของ package name อาจจะมาจากเว็บไซต์ของแอพเรา เช่น TrueMoney มีโดเนมของ website เป็น truemoney.com ก็จะเป็น com.truemoney หรือเว็บส่วนตัวเรา mikkipastel.com ก็จะเป็น com.mikkipastel นะ แล้วตามด้วยชื่อแอพของเรา ทำให้เราได้ package name ที่ unique สำหรับแอพของเราแล้วหล่ะ เช่น com.mikkipastel.myapplication
  • Save location : เราจะเซฟโปรเจกต์นี้ไว้ที่ folder ไหน
  • Language : ภาษาโปรแกรมมิ่งที่ใช้ แนะนำใช้ Kotlin นะ และเนื้อหาต่อจากนั้นจะเป็นการ implement ด้วยภาษา Kotlin ทั้งหมด
  • Minimum SDK : คือ Android Version ที่ตํ่าที่สุดที่จะลงแอพเราได้

แล้ว Android Version ไหนเป็น version ที่ยอดนิยมที่สุดนะ?

กดตรง Help me choose เพื่อดูรายละเอียดเพิ่มเติม เป็น stat ว่าคนใช้ version ไหนกี่เปอร์ฌซนต์ โดย minSdkVersion คือ Android version ตํ่าสุดที่แอพเราจะรองรับได้ เดิมทีตั้งที่ API Level 16 ปัจจุบันคิดว่าน่าจะตั้งที่ API Level 21 นะ

ซึ่งจริงๆมีหน้าเว็บให้ดูแหละ แต่หา link ไม่เจอแล้วหล่ะ ;___;

เมื่อกดปุ่ม OK ก็จะเป็นอันเสร็จสิ้นกระบวนการสร้าง Android Project นะ รอบิ้วแปปนึงนะ หน้าตาจะเป็นแบบนี้เลย

Install Android SDK

เมื่อเปิดโปรแกรมแล้ว เราต้องลงอะไรเพิ่มเติมอีกบ้าง?

ลง Android SDK ก่อนเลย เปิดโดยไปที่ SDK Manager

จากนั้นไปที่แท็บ…

  • SDK Platform : เป็นการลง Android version ต่างๆที่ต้องการใช้ เบื้องต้นแนะนำให้ลง version ใหม่ล่าสุดที่ stable แล้ว ในที่นี้ลงเป็น Android 12.0 ที่มี API Level 31 นะ
  • SDK Tool : ในรูปคือเราลงเผื่อทุกตัวเลย 555 จะมีตัวหลักๆที่ต้อง install ก็คือ Android SDK Build-Tools, Android SDK Command-line Tools, Android SDK Platform-Tools ส่วน Android Emulator อันนี้เป็นเครื่อง Android Device นะ แนะนำให้โหลดติดเครื่องไว้ก่อนเลย

Android Project Structure

ส่วนประกอบต่างๆของ Android Project มีอะไรบ้างนะ ไปดูกัน~~

เดี๋ยวเรามาอธิบายแต่ละส่วนกันเนอะ

  • app เป็นที่เก็บ source code และ resource ต่างๆของแอพของเรา รวมไปถึง การเขียน test ต่างๆ ข้างในจะมี lib และ src
  • lib เก็บ library สำเร็จรูปที่ใช้ในแอพ
  • src เก็บ source code ที่เป็น Java หรือ Kotlin ในการทำงานต่างๆในแอพของเรา
  • res เก็บไฟล์ resource ต่างๆ ไม่ว่าจะเป็น layout, รูปภาพ อย่างของ Android เป็น drawable หรือ mipmap สำหรับ icon app, color, string ที่ใช้ในแอพ, font รวมไปถึงไฟล์อื่น ๆ เช่น ไฟล์เสียง, json, animation ต่าง ๆ
  • AndroidManifest.xml เป็น file กำหนดข้อมูลที่จำเป็นของแอพเรา เช่น ข้างในมี Activity อะไรที่ต้องเรียกใช้ในแอพบ้าง, ขอ permission อะไรที่ต้องใช้ในแอพ
  • androidTest เก็บ file ที่ทำ Instrument Test
  • test เก็บ file ที่ทำ Unit Test
  • build.gradle ควบคุมการ compile และการ build app เพื่อติดตั้งลงในอุปกรณ์ Android
  • gradlew เป็นไฟล์ที่สั่งให้ gradle ทำงาน

ในที่นี้เป็นการแสดงผลไฟล์แบบ project จะเห็นไฟล์ทั้งหมดในโปรเจกต์ของเรา หรือที่ชาว Android Developer ใช้กัน จะแสดงผลไฟล์แบบ Android ซึ่งไม่ได้เรียงตามไฟล์ทั้งหมดในเครื่องนะ

เริ่มบิ้วแอพแรกของเรากันเถอะ

เนื่องจากสร้างโปรเจกต์แล้ว ไม่มีไฟล์ activity มาให้ เราจะเริ่มทำไปพร้อมกันนะ ไม่งั้นบิ้วแอพลงเครื่องไม่ได้

แต่ถ้าเอาสะดวกแนะนำ fork อันนี้มาก่อนเลยจ้า เพราะมันต้องใส่ของเพิ่มเยอะประมาณนึง

เพิ่ม Activity

สร้างไฟล์ Activity เพิ่ม เนื่องจากตอนสร้างโปรเจกต์เราเลือกแบบ No Activity ไปเนอะ ให้คลิกขวาที่ package name จากนั้นไป New -> Kotlin Classs/File เพื่อสร้างไฟล์ใหม่

ตั้งชื่อไฟล์เลยว่า MainActivity จะได้เป็นไฟล์ MainActivity.kt มา

เดี๋ยวเรามาทำเพิ่มกัน

สร้าง layout

คลิกขวาที่ res เลือก New -> Android Resource Directory

เลือก Resource type เป็น layout แล้วกดปุ่ม OK

ตอนนี้เราได้ folder layout มาแล้ว มาเพิ่มไฟล์ layout สำหรับ UI ของ MainActivity กันเถอะ

คลิกขวาตรง layout เลือก New -> Layout Resource File

สร้างไฟล์ layout ที่ชื่อว่า activity_main เราจะได้ไฟล์ activity_main.xml

เราจะได้หน้าตา layout มาแบบนี้แล้วนะ

เราจะเพิ่ม TextView ลงไปในนี้ ลอกไปๆ

ส่วนประกอบของ layout นั้น มีการจัดเรียงเป็นแบบ hierarchy คือ จากบนลงล่าง

  • ViewGroup เป็นส่วน parent ของ View มีหน้าที่ในการจัด content ข้างใน และสามารถใส่ ViewGroup ซ้อนกันได้ด้วย
  • View เป็นส่วน child มีหน้าที่ในการแสดงผลข้อมูลต่างๆ ใส่ใน ViewGroup ต่างๆได้ เช่น TextView แสดงตัวหนังสือ

ประกอบร่าง

ไปที่ build.gradle ใน folder app เพื่อเพิ่มส่วน viewBinding กันก่อน

จากนั้นมาเพิ่มเติม MainActivity ตามนี้เลย

ตัว layout activity_main เมื่อกี้ จะถูกกลายร่างเป็น ActivityMainBinding ซึ่งเป็นไปตามชื่อของ layout ที่อ้างอิงกับ view ของเรา

หลังจากประกาศตัวแปรเรียบร้อยแล้ว เราจะทำการใส่ค่าให้มันกัน ที่ onCreateView ให้ inflate จาก layout มาและทำการ return binding.root มา

สำหรับเรื่อง View Binding สามารถอ่านต่อได้ที่นี่เลย

แน่นอนว่ากด run app แล้วไม่ได้ เพราะเรายังไม่ได้ set default activity หล่ะสิ

ดังนั้นไปเพิ่ม MainActivity ของเราที่ AndroidManifest.xml ตามนี้

สร้าง Android Emulator เพื่อทดลองรันแอพของเรา

เราใช้ Android virtual device (AVD) ในการจำลองเครื่อง Android ของเรา หรือที่เราเรียกทั่วไปกันว่า Android Emulator นั่นเอง

สามารถดูวิธีการสร้างได้ที่นี่นะ

https://developer.android.com/studio/run/managing-avds

การรันแอพของเราลงเครื่องจริง

มือถือ Android แต่ละแบรนด์มีวิธีการเปิด Developer Mode ที่ไม่เหมือนกัน หลักๆก็คือ Settings > About Phone > Build Number แล้วกด Build Number รัวๆ จนสามารถปลดล็อก Developer Mode ของเครื่องได้

จากนั้นเสียบสาย USB และเข้า Developer options เลื่อนไปตรง Debugging แล้วทำการ enable เมนู USB debugging และสำหรับ Android 11 ขึ้นไป ให้ enable เมนู Install via USB เพิ่มด้วยนะ

ส่วนการใช้งาน Developer options เพิ่มเติม สามารถดูได้ที่นี่เลย

https://developer.android.com/studio/debug/dev-options

มากดบิ้วแอพแรกของเรากันเถอะ

เมื่อไฟล์ทุกอย่างเรียบร้อยแล้ว กดที่ Run ‘app’

ถ้าเราบิ้วแอพบนเครื่องจริง อย่าลืมเสียบสาย usb เพื่อให้ตัว adb เห็น device ก่อนนะ จึงค่อยกดปุ่มนี้

ผลที่ได้จะเป็นแบบนี้นะ ถ้าได้แบบนี้ถือว่าเรียบร้อยแล้ว

จบเนื้อหาในส่วนแรกไปเพียงเท่านี้

--

--

Android Developer | Content Creator AKA. MikkiPastel | Web2 & Web3 Contributor