วันจันทร์ที่ 26 สิงหาคม พ.ศ. 2556

มาทำความรู้จักกับน้อง Droid กัน [วงรอบชีวิตของแอพพลิเคชั่น]

วงรอบชีวิตของแอพพลิเคชั่น (Application Life Cycle)
โดยปกติแล้วแอพพลิเคชั่นจะทำงานแยกกันในแต่ละโปรเซส และในแต่ละโปรเซสอาจจะมี Activity/Service ที่ทำงานอยู่มากกว่า 1 Activity/Service ดังนั้นในแต่ละแอพพลิเคชั่นอาจจะมีมากกว่า 1 Activity ซึ่งในการเริ่มทำงานนั้น Activity แบบซิงโครนัส (Synchronous) จะเริ่มทำงานด้วย startActivity() และสำหรับ Activity แบบอะซิงโครนัส (Asynchronous) จะเริ่มทำงานด้วย startSubActivity() โดยในแต่ละ Activity จะมีวงรอบชีวิต (Life Cycle) ที่แยกจากกันโดยชัดเจน ซึ่งมีสถานะการทำงานหลักดังนี้

  • onCreate (Bundle savedInstanceState) ส่วนนี้จะถูกเรียกใช้งานเมื่อเริ่มทำงาน ในกรณีที่มีการเรียกใช้งานเมธอด (Method) นี้ Android Framework จะนำ Bundle object ไปบันทึกไว้ใน Activity ก่อนที่ Activity จะทำงาน ซึ่งจากนั้นจะตามด้วยฟังก์ชั่น onStart()

  • onStart() ส่วนนี้เป็นการระบุว่า Activity นั้นๆ จะถูกแสดงขึ้นมา จากนั้นสถานะจะถูกย้านไปเป็นสถานะ onResume แต่ถ้า Activity นั้นไม่สามารถทำงานได้ด้วยเหตุผลบางอย่าง สถานะจะถูกย้ายไปเป็นสถานะ onStop

  • onRestart() ส่วนนี้จะเป็นการระบุว่า Activity นั้นจะถูกแสดงขึ้นมาอีกครั้งหนึ่ง ซึ่งจะตามด้วยสถานะ onStart()

  • onResume() ส่วนนี้จะถูกเรียกเมื่อ Activity นั้นๆ มีการติดต่อกับผู้ใช้งาน เช่น นักพัฒนาต้องการเรียก Activity นั้นขึ้นมาทำงานอีกรอบหนึ่ง หลังจากที่ Activity นั้นอยู่ในสถานะ onPause

  • onPause() ส่วนนี้จะถูกเรียกใช้เมื่อ Activity นั้นจะถูกเปลี่ยนไปเป็นการทำงานทางเบื้องหลัง (Background)

  • onStop() ส่วนนี้จะถูกเรียกใช้งานเมื่อผู้ใช้ไม่ต้องการใช้งาน Activity นั้นๆ ในช่วงระยะเวลาหนึ่งๆ ซึ่งจะตามด้วยสถานะ onRestart() เมื่อต้องการกลับมาทำงานที่ Activity นั้นอีกครั้ง หรือตามด้วยสถานะ onDestroy() เมื่อต้องการปิด Activity นั้นๆ

  • onDestroy() ส่วนนี้จะถูกเรียกเมื่อมีการปิดการทำงานของแต่ละ Activity


ที่มา - android-app-market.com

ไม่มีความคิดเห็น:

แสดงความคิดเห็น