מדריך הבדיקה של Android 6.0

ב-Android 6.0 יש לך הזדמנות להבטיח שהאפליקציות שלך יפעלו עם התג הבא של הפלטפורמה. הגרסה הזו כוללת מספר ממשקי API ושינויים בהתנהגות שיכולים להשפיע על האפליקציה שלכם, כפי שמתואר בקטע סקירה כללית על ממשקי API ובקטע שינויים בהתנהגות. בבדיקה באפליקציה שלך בגרסה הזו, יש כמה שינויי מערכת ספציפיים שצריך להתמקד בהם להבטיח שהמשתמשים ייהנו מחוויה טובה.

במדריך הזה מוסבר מה ואיך בודקים תכונות של Android 6.0 באפליקציה. אתם צריכים את הבדיקות של תכונות ספציפיות אלה לתעדוף, בגלל ההשפעה הפוטנציאלית שלהן על התנהגות האפליקציה:

הרשאות בדיקה

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

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

טיפים לבדיקה

היעזרו בטיפים הבאים לבדיקה כדי לתכנן ולבצע בדיקות של האפליקציה עם הגרסה החדשה והתנהגות הרשאות.

  • מזהים את ההרשאות הנוכחיות של האפליקציה ואת נתיבי הקוד הרלוונטיים.
  • לבדוק את התהליכים של המשתמשים בנתונים ובשירותים כאלה שמוגנים בהרשאות.
  • כדאי לבדוק שילובים שונים של הרשאות שהוקצו או בוטלו.
  • משתמשים בכלי adb כדי לנהל את ההרשאות משורת הפקודה:
    • הצגת רשימת ההרשאות והסטטוס לפי קבוצה:
      adb shell pm list permissions -d -g
    • מעניקים או מבטלים הרשאה אחת או יותר באמצעות התחביר הבא:
      adb shell pm [grant|revoke] <permission.name> ...
  • בודקים באפליקציה אילו שירותים משתמשים בהרשאות.

אסטרטגיית בדיקה

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

מאתרים את ההרשאות שדרושות לאפליקציה ושהיא משתמשת בהן בפועל, ואז מוצאים את הקוד נתיבים שמשתמשים בשירותים שמוגנים בהרשאות. אפשר לעשות זאת באמצעות שילוב של בדיקה בפלטפורמה החדשה וניתוח הקוד. בבדיקות, צריך להתמקד בהבעת הסכמה צריך לשנות את targetSdkVersion של האפליקציה לרמת API 23.

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

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

בדיקת התכונות 'מצב נמנום' ו'אפליקציה במצב המתנה'

תכונות חיסכון האנרגיה של Doze ו-App Standby מגבילות את כמות העיבוד ברקע שהאפליקציה יכולה לבצע כשהמכשיר במצב חוסר פעילות או כשהאפליקציה לא במוקד. הגבלות שהמערכת עשויה להטיל על אפליקציות כוללות גישה מוגבלת או ללא גישה לרשת, משימות שהושעו ברקע, התראות שהושעו, התעלמות מבקשות יציאה ממצב שינה והתראות. כדי לוודא לכך שהאפליקציה פועלת כראוי עם האופטימיזציות האלה לחיסכון באנרגיה, כדאי לבדוק את האפליקציה על שמדמה את המצבים שבהם צריכת החשמל נמוכה.

בדיקת האפליקציה באמצעות Doze

כדי לבדוק את Doze באפליקציה:

  1. הגדרת מכשיר חומרה או מכשיר וירטואלי עם קובץ אימג' של מערכת Android 7.0 (רמת API 24).
  2. מחברים את המכשיר למכונה לפיתוח ומתקינים את האפליקציה.
  3. מריצים את האפליקציה ומשאירים אותה פעילה.
  4. כדי לדמות את המכשיר שנכנס למצב Doze, מריצים את הפקודות הבאות:
    $ adb shell dumpsys battery unplug
    $ adb shell dumpsys deviceidle step
    $ adb shell dumpsys deviceidle -h
    
  5. בודקים את ההתנהגות של האפליקציה כשהמכשיר מופעל מחדש. כדאי לוודא מתאוששות בחינוּת כשהמכשיר יוצא ממצב 'נמנום'.

בדיקת אפליקציות במצב המתנה של אפליקציה

כדי לבדוק את מצב ההמתנה של האפליקציה:

  1. הגדרת מכשיר חומרה או מכשיר וירטואלי עם קובץ אימג' של מערכת Android 7.0 (רמת API 24).
  2. מחברים את המכשיר למכונה לפיתוח ומתקינים את האפליקציה.
  3. מריצים את האפליקציה ומשאירים אותה פעילה.
  4. מריצים את הפקודות הבאות כדי לדמות את האפליקציה במעבר למצב המתנה:
    $ adb shell am broadcast -a android.os.action.DISCHARGING
    $ adb shell am set-idle <packageName> true
    
  5. צריך לדמות את הוצאה של האפליקציה ממצב שינה באמצעות הפקודה הבאה:
    $ adb shell am set-idle <packageName> false
  6. חשוב לבדוק את התנהגות האפליקציה כשהיא לא במצב שינה. מוודאים שהמכשיר חוזר למצב פעיל בצורה חלקה ממצב המתנה. במיוחד, צריך לבדוק אם ההתראות והרקע של האפליקציה משימות ימשיכו לפעול כצפוי.

גיבוי אוטומטי לאפליקציות ומזהים ספציפיים למכשיר

אם האפליקציה שומרת במיקום האחסון הפנימי מזהים ספציפיים למכשיר, כמו מזהה הרישום של Google Cloud Messaging, חשוב לפעול לפי השיטות המומלצות כדי להחריג את מיקום האחסון מהגיבוי האוטומטי, כפי שמתואר במאמר גיבוי נתוני משתמשים באמצעות גיבוי אוטומטי.