يمثل Activity شاشة واحدة بواجهة مستخدم — وهو مكون أساسي في Android. دورة حياته (سلسلة الحالات والـ callbacks عند إنشاؤه وعرضه وإخفاؤه وتدميره) ضروري فهمها لإدارة الموارد والحالة بشكل صحيح.
ما هو Activity
An ACTIVITY = one screen of the app (a UI the user interacts with):
→ an app is typically several activities (a login screen, a home screen, etc.)
→ the OS manages activities and calls LIFECYCLE methods as their state changes
دورة حياة Activity
Key lifecycle callbacks (the OS calls these as the activity's state changes):
onCreate() → activity is being CREATED → initialize UI, set up (called once)
onStart() → becoming VISIBLE to the user
onResume() → now in the FOREGROUND, interactive (user can interact)
onPause() → losing focus (another activity coming in front) → pause/save lightly
onStop() → no longer VISIBLE → release resources, stop heavy work
onDestroy() → being DESTROYED → final cleanup
→ Flow: onCreate → onStart → onResume → [running] → onPause → onStop → onDestroy
لماذا دورة الحياة مهمة
The activity's state changes (user navigates away, a call comes in, rotation, etc.):
→ MANAGE RESOURCES — acquire in onResume/onStart, release in onPause/onStop
(e.g. start/stop a camera, location updates, sensors)
→ SAVE STATE — onPause/onSaveInstanceState before the activity may be destroyed
→ CONFIGURATION CHANGES (e.g. rotation) DESTROY and recreate the activity → must
handle state restoration (a common source of bugs)
→ Mismanaging the lifecycle → leaks, crashes, lost state.
أهميته
فهم Activity ودورة حياته أساسي في تطوير Android لأن activities هي مكونات أساسية وإدارة دورة حياتها بشكل صحيح ضرورية للتطبيقات الصحيحة، لذا فهو معرفة أساسية لا بد منها.
Activity (شاشة واحدة بواجهة مستخدم) هو أحد البنات الأساسية في Android، والتطبيقات تتكون من activities تمثل شاشات مختلفة.
فهم دورة الحياة — سلسلة الـ callbacks (onCreate للتهيئة، onStart/onResume عندما تصبح مرئية وتفاعلية، onPause/onStop عندما تفقد التركيز والرؤية، onDestroy للتنظيف) التي يستدعيها النظام عند تغير حالة activity — ضروري لأنه يحكم متى تفعل ماذا.
فهم لماذا دورة الحياة مهمة هو المعرفة العملية الأساسية: يجب أن تدير الموارد بشكل مناسب (الحصول على موارد مثل الكاميرا أو تحديثات الموقع أو المستشعرات عندما يكون activity نشطاً وتحريرها عندما لا يكون كذلك، لتجنب إهدار الموارد والبطارية)، حفظ واستعادة الحالة (لأن activity قد يتم تدميره)، والتعامل بشكل حاسم مع تغييرات الإعدادات (مثل دوران الشاشة، الذي يدمر وينشئ activity مرة أخرى — مصدر شائع للأخطاء حيث تفقد الحالة إذا لم تتعامل معها).
سوء إدارة دورة الحياة يؤدي إلى مشاكل حقيقية: تسرب الذاكرة (الاحتفاظ بموارد عند التوقف)، أعطال، وفقدان الحالة (خاصة عند الدوران).
بما أن activities هي مكونات Android أساسية وإدارة دورة حياتها بشكل صحيح (إدارة الموارد، حفظ الحالة، التعامل مع تغييرات الإعدادات) ضرورية لبناء تطبيقات صحيحة وقوية لا تسرب أو تتعطل أو تفقد الحالة، فإن فهم Activity ودورة حياته معرفة Android أساسية وضرورية — أحد أهم المفاهيم في تطوير Android، ضروري لكتابة تطبيقات تتصرف بشكل صحيح عبر تغييرات الحالة (التنقل والدوران والانقطاعات) التي تحدث باستمرار، ومصدر متكرر للأخطاء الذي يمنعها الفهم الصحيح لدورة الحياة.
