אופטימיזציה של משחקים ל-Android

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

  • Android GPU Inspector (AGI): כלי ליצירת פרופילים של מערכת Android שמספק מעקב וניתוח מתקדמים של GPU למשחקים ולאפליקציות עם גרפיקה עשירה.

  • Android Performance Tuner (APT): מאפשר לזהות בעיות בביצועים שקשורות להגדרות האיכות, לסצנות, לזמני הטעינה ולדגמי המכשירים במשחק.

  • Android Dynamic Performance Framework (ADPF): אופטימיזציה של משחקים על סמך התכונות הדינמיות לניהול טמפרטורה, מעבד ויחידת עיבוד גרפי (GPU) בכל מכשיר.

  • Memory Advice API: מספק הערכות של השימוש בזיכרון והתראות על סף כדי שהמשחק יוכל להישאר ברמות אופטימליות שימנעו את ה-LMK.

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

  • Perfetto: אוסף נתוני ביצועים ברמת המערכת ומציג אותם בממשק משתמש מבוסס-אינטרנט.

  • Systrace: כלי שמתעד את פעילות המערכת ומפיק דוחות שעוזרים לזהות בעיות בביצועים.

  • CPU Profiler: בדיקת השימוש במעבד של האפליקציה ופעילות השרשור, בזמן אמת או מתוך עקבות מתועדים.

  • Meminfo class: מתעד תמונת מצב של הקצאת הזיכרון של האפליקציה. אפשר גם להשתמש בתכונה הזו באמצעות הפקודה meminfo dumpsys.

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

  • R8: כיווץ, אופטימיזציה והצפנה של הקוד והמשאבים של האפליקציה שמבוססים על Java ו-Kotlin, כדי להקטין את גודל ה-DEX, לשפר את ביצועי ההפעלה ולצמצם את התקורה של הזיכרון בזמן הריצה.

  • כלי לניתוח ההגדרות של R8: בודק ומבצע אופטימיזציה של כללי השמירה של R8 כדי לזהות הגדרות רחבות מדי באפליקציה או בספריות של צד שלישי, וכך משפר את כיווץ הקוד, ערפול הקוד וגודל ה-DEX של התלויות מבוססות Java ו-Kotlin במשחק.

  • פרופילים של Baseline: שיפור זמני ההפעלה וצמצום הבעיות בשלב ההפעלה על ידי אספקת מפרטים של קימפול מראש (AOT) ל-ART עבור נתיבי קוד מבוססי Java ו-Kotlin במשחק, כמו פעילויות של מרכז האפליקציות ואתחול של SDK.

  • בדיקת ביצועים ברמת המאקרו: מדידה ובדיקה של ביצועי האפליקציה ברמה גבוהה, כמו תזמון של הפעלה מההתחלה (cold startup) ופעולות אחרי ההפעלה, בסביבות בדיקה אוטומטיות או ב-CI, ויצירה של פרופילי Baseline למשחק.