רמה 2 – אופטימיזציה מותאמת

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

תיאור של שלוש רמות האיכות כשכבות שמוערמות אנכית, כשהשכבה האמצעית מודגשת.

הנחיות

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

ממשק משתמש

מזהה הנחיה מזהי בדיקות תיאור
Responsive_adaptive_layouts T-Layout_Flow

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

ממשק המשתמש של האפליקציה יכול לכלול את הרכיבים הבאים:

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

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

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

UI_Secondary_Elements T-Layout_Flow

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

  • במסכים גדולים, גיליונות תחתונים לא תופסים את כל הרוחב. (כדאי להגדיר רוחב מקסימלי כדי למנוע מתיחה). מידע נוסף מופיע בקטע התנהגות במאמר Sheets: bottom.
  • הכפתורים לא תופסים את כל הרוחב במסכים גדולים. מידע נוסף זמין במאמר בנושא התנהגות בקטע כפתורים.
  • תיבות ומשדות טקסט לא נמתחים לרוחב מלא במסכים גדולים. מידע נוסף זמין בקטע התנהגות במאמר בנושא שדות טקסט.
  • תפריטי עריכה קטנים או חלונות קופצים לא מכסים את כל המסך, ושומרים על ההקשר של המשתמש ככל האפשר. תפריטים
  • תפריטי הקשר מופיעים לצד הפריט שהמשתמש בחר. אפשר לעיין בנושא 'תפריטי הקשר' במאמר תפריטים.
  • סרגלי ניווט מחליפים את סרגלי הניווט כדי לשפר את הארגונומיה במסכים גדולים. ראו פס ניווט.
  • מגירות הניווט עודכנו לסרגלי ניווט מורחבים. חלונית ההזזה לניווט
  • תיבות הדו-שיח עודכנו לרכיב החומר העדכני ביותר. מידע נוסף על תיבות דו-שיח
  • התמונות מוצגות ברזולוציה מתאימה, והן לא מתוחות או חתוכות.
Touch_Targets T-Touch_Targets יעדי המגע הם לפחות 48dp. אפשר לעיין בהנחיות של Material Design בנושא פריסה וטיפוגרפיה.
Drawable_Focus T-Drawable_Focus נוצר מצב ממוקד עבור רכיבים גרפיים מותאמים אישית שכוללים אינטראקטיביות. רכיב drawable מותאם אישית הוא כל רכיב חזותי בממשק המשתמש שלא מסופק על ידי מסגרת Android. אם משתמשים יכולים לבצע אינטראקציה עם רכיב drawable מותאם אישית, הרכיב צריך להיות ניתן למיקוד כשהמכשיר לא נמצא במצב מגע, וצריך להיות סימן ויזואלי ברור למצב המיקוד.

מקלדת, עכבר ומשטח מגע

מזהה הנחיה מזהי בדיקות תיאור
Keyboard_Navigation T-Keyboard_Navigation תהליכי העבודה העיקריים באפליקציה תומכים בניווט באמצעות המקלדת, כולל ניווט באמצעות Tab ומקשי החיצים. איך מפתחים אפליקציות נגישות יותר
Keyboard_Shortcuts T-Keyboard_Shortcuts האפליקציה תומכת במקשי קיצור לפעולות נפוצות כמו בחירה, גזירה, העתקה, הדבקה, ביטול פעולה וביצוע מחדש. מידע נוסף על מקלדת, עכבר ומשטח מגע
Keyboard_Media_Playback T-Keyboard_Media_Playback אפשר להשתמש במקלדת כדי לשלוט בהפעלת מדיה. לדוגמה, מקש הרווח מפעיל ומשהה מדיה.
Keyboard_Send T-Keyboard_Send מקש Enter במקלדת מבצע את הפונקציה שליחה באפליקציות תקשורת.
Keyboard_Exit T-Keyboard_Exit המקש Esc במקלדת מבצע פעולת יציאה שמסיימת או מבטלת פעולה, למשל:
  • סגירה של חלונות קופצים, תיבות דו-שיח ותפריטים
  • ניקוי טקסט החיפוש או הסרת המיקוד מהחיפוש
  • ביטול המיקוד של המקלדת
  • יציאה מסרטון במסך מלא, מתמונה בתוך תמונה, ממצב מסך מלא או ממצגת
  • סגירה של אמצעי בקרה שמופיעים במסך, כמו סרגלי התקדמות או תפריטים
  • ביטול טיימרים של 'הסרטון הבא' או של הפעלה אוטומטית
  • ביטול הבחירה של כל הפריטים שנבחרו
  • ביטול השינוי של השם או העריכה בלי שמירה
  • יציאה מכלי החיתוך או מכלי השינוי וביטול השינויים
Context_Menus T-Context_Menus אפשר לגשת לתפריטי ההקשר באמצעות לחיצה ימנית רגילה בעכבר או במשטח המגע (הכפתור המשני בעכבר או לחיצה משנית).
Content_Zoom T-Content_Zoom אפשר להגדיל את התוכן באפליקציה באמצעות גלגל הגלילה של העכבר (בצירוף לחיצה על המקש Control או Ctrl) ועל ידי פתיחה או סגירה של האצבעות על משטח המגע.
Hover_States T-Hover_States ברכיבים לחיצים של ממשק המשתמש יש מצבים של הצבת הסמן (במקרים המתאימים), כדי לציין למשתמשים בעכבר ובמשטח המגע שהרכיבים אינטראקטיביים.

בדיקות

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

ממשק משתמש

מזהה בדיקה מזהי הנחיות תיאור
T-Layout_Flow Responsive_adaptive_layouts,
UI_Secondary_Elements

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

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

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

T-Touch_Targets Touch_Targets צריך לוודא שמשטחי המגע שומרים על גודל ומיקום עקביים ונגישים, ושלא מוסתרים או מוסווים על ידי רכיבים אחרים בממשק המשתמש בכל הגדלים וההגדרות של התצוגה. מידע על נגישות זמין במאמר בנושא Accessibility Scanner.
T-Drawable_Focus Drawable_Focus בכל מסך אפליקציה שמכיל רכיב גרפי אינטראקטיבי בהתאמה אישית, צריך לוודא שאפשר להתמקד ברכיב הגרפי באמצעות מקלדת חיצונית, מקשי חצים או מכשיר אחר שמאפשר להתמקד ברכיבי ממשק משתמש. מוודאים שיש אינדיקציה חזותית ברורה למצב המיקוד. מידע נוסף מופיע במאמרי העזרה בנושא מצב כתיבה.

מקלדת, עכבר ומשטח מגע

מזהה בדיקה מזהי הנחיות תיאור
T-Keyboard_Navigation T-Keyboard_Navigation מנווטים בין הרכיבים שניתן להתמקד בהם באפליקציה באמצעות מקש Tab ומקשי החיצים במקלדת חיצונית.
T-Keyboard_Shortcuts Keyboard_Shortcuts אפשר להשתמש במקשי קיצור במקלדת חיצונית כדי לבצע פעולות כמו בחירה, גזירה, העתקה, הדבקה, ביטול פעולה וביצוע מחדש.
T-Keyboard_Media_Playback Keyboard_Media_Playback אפשר להשתמש במקלדת חיצונית כדי להתחיל, להפסיק, להשהות, להריץ אחורה ולהריץ קדימה את הפעלת המדיה.
T-Keyboard_Send Keyboard_Send משתמשים במקש Enter במקלדת חיצונית כדי לשלוח או להגיש נתונים.
T-Keyboard_Exit Keyboard_Exit

משתמשים במקש Esc במקלדת חיצונית כדי לבצע את הפונקציה יציאה. מוודאים שהמפתח מבצע את הפעולות הבאות (אם רלוונטי):

  • סגירה של חלונות קופצים, תיבות דו-שיח ותפריטים
  • ניקוי טקסט החיפוש או הסרת המיקוד מהחיפוש
  • ביטול המיקוד של המקלדת
  • יציאה מסרטון במסך מלא, מתמונה בתוך תמונה, ממצב מסך מלא או ממצגת
  • סגירת אמצעי הבקרה במסך
  • ביטול טיימרים של 'הסרטון הבא' או של הפעלה אוטומטית
  • ביטול הבחירה של כל הפריטים שנבחרו
  • ביטול השינוי של השם או העריכה בלי שמירה
  • יציאה מכלי החיתוך או מכלי השינוי וביטול השינויים
T-Context_Menus Context_Menus כדי לגשת לתפריט ההקשר של רכיבים אינטראקקטיביים, משתמשים בלחצן המשני בעכבר או בתכונה של הקשה משנית במשטח המגע.
T-Content_Zoom Content_Zoom כדי להגדיל ולהקטין את התוכן, משתמשים בגלגל הגלילה של העכבר (יחד עם המקש Control או Ctrl) ובתנועות צביטה בלוח המגע.
T-Hover_States Hover_States מציבים את סמן העכבר או משטח המגע מעל רכיבים לחיצים של ממשק המשתמש כדי להפעיל את מצב הצבת הסמן של הרכיב.