Android Programming Getting Start Prawit Pimpisan Computer Science RERU
เริ่มต้นพัฒนา App เมื่อเริ่มต้นพัฒนา App ถ้าเลือก Blank Activity จะได้ App ที่ชื่อว่า Hello Word
Folder และ File ใน Project App AndroidManifest.xml เป็นข้อมูลการ config ระบบของ App เพื่อใช้ควบคุม รวมถึงการกำหนดสิทธิ์ permission ต่างๆ java เป็นไฟล์ source code เพื่อใช้สำหรับ programing การทำงานของ App Res เป็นโฟลเดอร์ที่เก็บ resource ของ App ได้แก่ drawable ไฟล์ภาพ layout ไฟล์ xml ที่ใช้เป็น layout แสดงหน้าตาของ app Values เก็บไฟล์ข้อมูลต่างๆ เช่น ข้อความ สไตล์การควบคุม
Activity & Layout Activity เป็นโปรแกรมแกนหลัก ที่ทำหน้าที่รับข้อมูลจากส่วนต่างๆมา เพื่อทำการประมวลผล ใช้ภาษา java ในการพัฒนา activity เมื่อประมวลผลเสร็จแล้ว จะส่งต่อไปให้กับ Layout เพื่อแสดงผลออกทางหน้าจอ Layout ส่วนแสดงผล และรับข้อมูล input จากผู้ใช้ เพื่อนำไปให้ส่วนของ Activity ประมวลผล
การทำงานของ App การทำงานของ App เป็นการทำงานแบบเชื่อมโยงกันหลายไฟล์ ตัวอย่างการทำงานของโปรเจค HelloWorld มีการเชื่อมโยงการทำงานดังนี้ AndroidManifest.xml เป็นการกำหนดจุดเริ่มการทำงาน (Main, Launcher) MainActivity.java เริ่มทำงานที่เมธอด onCreate แล้วทำการกำหนด layout ที่จะแสดงออกมาผ่าน R.Layout.activity_main Res เป็นที่เก็บ Resource ของข้อมูล คล้ายกับพื้นที่การเก็บตัวแปร ซึ่งการเรียกใช้งานตัวแปรนั้นจะถูกเรียกใช้ทั้งในส่วนของ AndroidManifest และ Activity
การตรวจสอบการทำงานของโปรแกรม การพัฒนาโปรแกรมมักจะเกิด Error เป็นเรื่องปกติ ต้องตรวจสอบว่า Error เกิดจากอะไร Android Studio มีเครื่องมือที่ใช้ตรวจสอบการทำงานคือ LogCat
LogCat Log.e => error Log.w => warning Log.t => info เป็นการตรวจสอบการทำงานของโปรแกรม ใช้เขียนบันทึกเหตุการณ์ที่เกิดขึ้น เช่น พิมพ์ค่าที่ต้องการหาในขณะรันโปรแกรมออก การสั่ง Output ดูค่าผ่าน logcat มี 5 แบบด้วยกันคือ Log.e => error Log.w => warning Log.t => info Log.d => debug Log.v => verbose
Debug Mode 1 3 2 4 3
Life Cycle
Life Cycle App อย่างน้อยที่สุดต้องมีเมธอด onCreate() ที่ทำหน้าที่คล้ายกับเมธอด main ในภาษาอื่น ส่วนเมธอดอื่นๆ จะมีหรือไม่มีก็ได้ ขึ้นอยู่กับความซับซ้อนของโปรแกรม ถ้าใน activity มีคลาส onStart, onResume ก็จะดำเนินการตามลำดับ เมื่อมาถึงขั้นตอนนี้ เท่ากับว่าโปรแกรมกำลังรันอยู่ ซึ่งอยู่ในสถานะ Activity Running หากมีการเปิดโปรแกรมอื่นแทรกขึ้นมาแล้ว เมธอด onPause จะทำงาน และถ้าระบบต้องการ Ram ของเครื่องไปใช้กับโปรแกรมอื่น อาจจะต้องทำการคืน Ram ให้กับระบบ โดยรันเมธอด onStop หากออกจากโปรแกรมอื่นที่แรกเข้ามา แล้วกลับมาเปิดโปรแกรม จะเรียกเมธอด onRestart หากผู้ใช้งานกดปุ่ม Back จะเข้าไปที่สถานะ onpause, onStop และ onDestroy ตามลำดับ