יום חמישי, 4 במרץ 2010

בואו נעשה פעילות

בפעם הקודמת הסברתי על הכוונה (Intent) באנדרואיד. זוהי אבן ייסוד חשובה ביותר לצורך הבנת העבודה במערכת ההפעלה של אנדרואיד. הפעם, אסביר על הפעילות (Activity). הפעילות היא אולי הרכיב החשוב ביותר מבין כל הרכיבים של אנדרואיד שמניתי בעבר, אבל היא בהחלט רכיב שיופיע כמעט בכל אפליקציה, כיוון שהיא רכיב המגדיר את ממשק המשתמש.
אכן, המאפיין העיקרי של פעילות הוא היכולת שלה להציג למשתמש ממשק שבאמצעותו המשתמש יכול להפעיל את האפליקציה. מערכת ההפעלה של אנדרואיד קוראת למתודות של הפעילות כאשר משתנה מצב ההצגה של הפעילות למשתמש. הקריאה למתודות של הפעילות מתרחשת באירועים הבאים:

  • כאשר הפעילות נוצרת
  • כאשר הפעילות מוצגת כפעילות העליונה על המסך - במצב זה הקלט של המשתמש יגיע לפעילות והיא מוצגת (בד"כ על כל המסך)
  • כאשר הפעילות מוצגת חלקית על המסך - פעילות אחרת מוצגת מעליה, אולם לא תופסת את כל המסך, כמו הודעת popup
  • כאשר הפעילות מפסיקה להיות מוצגת על המסך - פעילות אחרת תופסת את כל המסך
  • כאשר פעילות חוזרת למסך מריצה ברקע.
  • כאשר הפעילות נסגרת

בעת יצירת הפעילות, אנחנו מציינים איזה Layout של רכיבי UI יוצג למשתמש. כמו כן, זהו הזמן להרשם לאירועים שעשויים להתרחש במערכת, ושאנו רוצים שהפעילות שלנו תגיב להם. דבר נוסף שיש לעשותו בעת יצירת הפעילות הוא התחלה של תהליכי הריצה שלנו, בין אם המדובר בהפעלה של שירות (Service), או בהרשמה של פונקציות לטיפול בממשק המשתמש (OnClick, ודומיו).
בעת שקורה כל אירוע אחר במהלך חיי הפעילות, יש לטפל בדרך שאנו מעונינים שהפעילות תגיב בה: למשל, אם כאשר הפעילות אינה מוצגת למשתמש, איננו רוצים שהיא תקבל אירועים מסוימים (למשל, די לחסוך במשאבים), אנו יכולים להוריד את הרשמתנו לאירועי מערכת.
עוד על הפעילות, תוכלו לקרוא פה

2 תגובות:

  1. חבר סיפר לי שהוא ניסה להשתמש בטלפון מבוסס אנדרואיד והחוויה היתה מאוד לא טובה. הוא התקשה אפילו להבין איך מחייגים...

    השבמחק
  2. מעניין איזה מכשיר זה היה.
    מדובר במכשירים טובים עם יכולות רבות יותר מהקיים בשוק. אם לדוגמא נשווה בין הנקסוס לאייפון, אז הנקסוס טוב יותר בסט היכולות שלו, אבל פחות אינטואטיבי בשימוש ראשוני. מעבר לכך מערכת ההפעלה שלו (אנדרואיד) טובה באופן ניכר מזו של האייפון ושל מערכות הפעלה אחרות בשוק

    השבמחק