Lifecycle
activity
Activity
פעולה זו נקראת כאשר אקטיביטי נוצרת לראשונה.
כאן מתבצעת יצירת ממשק המשתמש
באמצעות פעולה setContentView()
onCreate()
Activity
לא מומלץ לבצע פעולות ארוכות טווח ב-onCreate():
כמו הורדת נתונים מהרשת או ביצוע חישובים מורכבים, למשל.
הסיבה לכך היא ש-onCreate() פועל על הזרם הראשי
וכל פעולה ארוכת טווח יכולה להאט את התגובה של ממשק המשתמש ולגרום ל- Application Not Responding
(האפליקציה מפסיקה להגיב לאינטראקציות של המשתמש).
onCreate()
Activity
עצם מסוג Bundle המופיע כפרמטר ב-onCreate() יכול לשמש או להעברת נתונים בין אקטיביטי לאקטיביטי,
או כדי לשמור את המצב של אקטיביטי
כאשר היא נוצרת מחדש.
onCreate()
Activity
כאשר אקטיביטי נוצרת מחדש
(למשל, כאשר המסך מסובב או שינוי תצורת המכשיר), המערכת קוראת לפעולה onCreate() ומעבירה לה את האובייקטBundle כפרמטר.
אם האקטיביטי הושמדה ונוצרת מחדש,
ה"חבילה" יכולה להכיל נתונים שמורים
(שנשמרו בקריאה קודמת לפעולה).
onCreate()
Activity
onCreate()
דוגמה לשמירת נתונים כדי לא לאבד אותם
Activity
onCreate()
דוגמה ל"חילוץ" של הנתונים שנשמרו
Activity
פעולה זו נקראת כאשר האקטיביטי
הופכת לגלויה למשתמש.
עם זאת, בשלב זה האקטיביטי
עדיין לא מוכנה לאינטראקציה עם המשתמש מכיוון שהיא עשויה להיות מוסתרת חלקית על ידי רכיבי ממשק משתמש אחרים
(ע"י חלון AlertDialog, למשל).
onStart()
Activity
פעולה זו מתבצעת כאשר
אקטיביטי הופכת להיות נגישה למשתמש.
כדאי לשקול ולהחליט
אילו פעולות להפעיל ב-onStart()
ואילו פעולות להפעיל ב-onResume()
onResume()
Activity
שוב: פעולה זו נקראת כאשר האקטיביטי
מתחילה ליצור אינטראקציה עם המשתמש.
בשלב זה, האפליקציה שלך נמצאת בחזית והמשתמש יכול ליצור איתה אינטראקציה.
onResume()
Activity
פעולה זו נקראת כאשר האקטיביטי הנוכחית מאבדת מיקוד ונכנסת לרקע.
זה קורה כאשר בגלל פעילות כלשהי
"מסך" מאבד "מצב אקטיבי" (focus),
אבל עדיין נמצא "בשכבה תחתונה".
פעולה זאת מתאימה לשמירת נתונים
שעלולים להימחק
onPause()
Activity
פעולה זו נקראת כאשר האקטיביטי
כבר אינה גלויה יותר למשתמש.
לדוגמה, כאשר המשתמש עובר לאפליקציה אחרת.
בפעולה זו מומלץ לבצע, למשל:
שחרור משאבים
עצירת אנימציה
לשמור נתונים
onStop()
Activity
פעולה זו נקראת לפני השמדת האקטיביטי.
זה יכול לקרות בגלל שהמערכת "הורגת"
את התהליך או בגלל שנקראת פעולה finish()
onDestroy()
Activity
פעולה זו נקראת לאחר שהפעילות שהופסקה הופכת שוב לגלויה.
Application
onRestart()