התקנת פרופיל

  
מאפשרת לספריות לאכלס מראש מעקבי הידור מראש לקריאה על ידי ART.
העדכון האחרון גרסה יציבה מועמד לפרסום גרסת בטא גרסת אלפא
7 באוגוסט 2024 1.3.1 - - 1.4.0-alpha02

הצהרה על יחסי תלות

כדי להוסיף תלות ב-ProfileInstaller, עליך להוסיף את מאגר Google Maven פרויקט. למאגר Maven של Google אפשר לקבל מידע נוסף.

מוסיפים את יחסי התלות של פריטי המידע הנדרשים בקובץ build.gradle בשביל האפליקציה או המודול שלך:

מגניב

dependencies {
    implementation "androidx.profileinstaller:profileinstaller:1.3.1"
}

Kotlin

dependencies {
    implementation("androidx.profileinstaller:profileinstaller:1.3.1")
}

למידע נוסף על יחסי תלות, אפשר לעיין במאמר הוספת יחסי תלות של build.

משוב

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

דיווח על בעיה חדשה

מקורות מידע בנושא מעקב אחר בעיות אפשר לקבל מידע נוסף.

גרסה 1.4

גרסה 1.4.0-alpha02

7 באוגוסט 2024

androidx.profileinstaller:profileinstaller:1.4.0-alpha02 משוחרר. גרסה 1.4.0-alpha02 מכילה את התחייבויות אלה.

תכונות חדשות

  • נוספה תמיכה ב-api 35 למנהל ההתקנה של הפרופיל. (6f9f6fa)

תיקוני באגים

  • הוסרה חלוקה ידנית של הגישה לממשקי API של פלטפורמות חדשות, כי זה קורה באופן אוטומטי באמצעות בניית מודלים של API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל R8 גרסה 3.3) ובכל גרסאות ה-build כשמשתמשים ב-AGP 8.1 ואילך (למשל D8 גרסה 8.1). ללקוחות שלא משתמשים ב-AGP מומלץ לעדכן לגרסה D8 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (If6b4c, b/345472586)

גרסה 1.4.0-alpha01

7 בפברואר 2024

androidx.profileinstaller:profileinstaller:1.4.0-alpha01 משוחרר. גרסה 1.4.0-alpha01 מכילה את התחייבויות אלה.

תיקוני באגים

  • נוסף קוד שגיאה לכך שלא הוטמע פרופיל במאמת הפרופיל. (Ifb109, b/313928520)
  • תיקון הקריסה כשמשחררים תוכנות הצללה (shader) ב-Android U (API 34) וגם באמולטורים. (I031ca, b/274314544)
  • הופעלה תמיכה ב-Android U במנהל ההתקנה של הפרופיל. (Iaf177)
  • ההתקנה של פרופיל קבוע ב-Android U נכשלת כי הפרופיל הנוכחי לא נוצר ריק כשהתהליך מתחיל. (Ie3899)
  • תיקון של המרת הקידוד של מפת הסיביות בשיטה בפורמט של הפרופיל V_015S. (aosp/2906631) וגם (aosp/2847740)

גרסה 1.3

גרסה 1.3.1

3 במאי 2023

androidx.profileinstaller:profileinstaller:1.3.1 משוחרר. גרסה 1.3.1 כוללת את ההתחייבויות האלה.

תיקוני באגים

  • הופעלה תמיכה ב-Android U במנהל ההתקנה של הפרופיל (Iaf177)
  • תיקון ההתקנה של הפרופיל ב-Android U נכשל כי הפרופיל הנוכחי לא נוצר ריק כשהתהליך מתחיל. (Ie3899)

גרסה 1.3.0

22 במרץ 2023

androidx.profileinstaller:profileinstaller:1.3.0 משוחרר. גרסה 1.3.0 כוללת את ההתחייבויות האלה.

שינויים חשובים מאז 1.2.0

  • תוקן NullPointerException ב-ProfileInstallReceiver. (b/243851384)
  • נוסף ה-API של ProfileVerifier כדי לבדוק מתוך האפליקציה אם פרופיל הבסיס עבר הידור, תוזמן או חסר (I263a4, b/246653809)
  • הוספת שידור מעטפת חדש שמאפשר ל-Macrobenchmark לרוקן באופן מלא את נתוני הפרופיל ששמורים בזיכרון, כדי להיכלל ביצירת פרופיל בסיסי. הפעולה הזו נדרשת כדי להשתמש בספריית המאקרו לנתוני ההשוואה לשוק כדי לתעד פרופילים בסיסיים באמצעות BaselineProfileRule ולהעריך את ביצועי הפרופיל באמצעות CompilationMode.Partial(warmupIterations).
  • נוסף קוד אבחון לזיהוי פרופילים בסיסיים דחוסים. אי אפשר להתקין פרופילים בסיסיים דחוסים על ידי Profileinstaller ב-Macrobenchmark או בסביבת הייצור בגלל תקורה של המעבד (CPU). יש להימנע מכך כשמפתחים את האפליקציה באמצעות עדכון לגרסה של Studio/AGP Electric Eel או של bundletool 1.13.1(I86413, b/261998144)
  • נוספו רכיבי הוק (hooks) למאקרובנצ'מרק כדי לתעד פרופילים ולשחרר מטמון של תוכנת ההצללה (shader), הנדרשים ליצירת פרופילים בסיסיים או לביצוע מקרובנצ'מרקים במכשירים שלא עברו תהליך רוט (Ie0a7d, b/250083467, b/253094958) (Ia5171, b/2324557)

גרסה 1.3.0-rc01

8 במרץ 2023

androidx.profileinstaller:profileinstaller:1.3.0-rc01 הושקה ללא שינויים מאז גרסת הבטא האחרונה. גרסה 1.3.0-rc01 מכילה את ההתחייבויות האלה.

גרסה 1.3.0-beta01

8 בפברואר 2023

androidx.profileinstaller:profileinstaller:1.3.0-beta01 משוחרר. גרסה 1.3.0-beta01 מכילה את התחייבויות אלה.

שינויים ב-API

  • ביטול התמיכה בטיפול בפרופילים דחוסים – פתיחה וביטול דחיסה מובילים לרגרסיה של 10 אלפיות השנייה בניצול המעבד במהלך ההפעלה במהלך ההפעלה. לכן, במקום זאת הוספת אבחון לזיהוי פרופילים בסיסיים שנדחסו באופן שגוי. (I86413, b/261998144)

גרסה 1.3.0-alpha03

11 בינואר 2023

androidx.profileinstaller:profileinstaller:1.3.0-alpha03 משוחרר. גרסה 1.3.0-alpha03 מכילה את התחייבויות אלה.

תיקוני באגים

  • מאפשר טיפול בפרופילים בסיסיים דחוסים או לא דחוסים (Ic61a0)
  • יש לתקן את MacrobenchmarkScope.dropShaderCache() כך שלא תקרוס יותר על ידי תיקון רישום השידור במניפסט של מנהל ההתקנה (I5c728, b/258619948)

גרסה 1.3.0-alpha02

9 בנובמבר 2022

androidx.profileinstaller:profileinstaller:1.3.0-alpha02 משוחרר. גרסה 1.3.0-alpha02 מכילה את התחייבויות אלה.

שינויים ב-API

  • הוספת תוכן מושך (hook) לנקודות השוואה כדי לשחרר את מטמון ההצללה, כדי להבטיח ביצועים עקביים בסטארט-אפים במצב התחלתי (cold start), במיוחד במהלך הידור לפרופילים מחזרות בשלב ההכנה. העדכון הזה נדרש כדי למדוד הפעלה במצב התחלתי (cold start) באמצעות benchmark-macro-junit4:1.2.0-alpha05 ואילך. לשינויי ה-API בספריית ההשוואה לשוק יש לעיין בדף השוואה לשוק 1.2.0-alpha07. (Ia5171, b/231455742)

גרסה 1.3.0-alpha01

24 באוקטובר 2022

androidx.profileinstaller:profileinstaller:1.3.0-alpha01 משוחרר. גרסה 1.3.0-alpha01 מכילה את התחייבויות אלה.

שינויים ב-API

  • נוסף ה-API של ProfileVerifier כדי לבדוק מתוך האפליקציה אם פרופיל הבסיס עבר הידור, תוזמן או חסר (I263a4, b/246653809)
  • הוספת שידור מעטפת חדש שמאפשר ל-Macrobenchmark לרוקן באופן מלא את נתוני הפרופיל ששמורים בזיכרון, כדי להיכלל ביצירת פרופיל בסיסי. הפעולה הזו נדרשת כדי להשתמש בספריית המאקרו לנתוני ההשוואה לשוק כדי לתעד פרופילים בסיסיים באמצעות BaselineProfileRule ולהעריך את ביצועי הפרופיל באמצעות CompilationMode.Partial(warmupIterations). (Ie0a7d, b/250083467, b/253094958)

גרסה 1.2.2

גרסה 1.2.2

11 בינואר 2023

androidx.profileinstaller:profileinstaller:1.2.2 משוחרר. גרסה 1.2.2 כוללת את ההתחייבויות האלה.

תיקוני באגים

  • מאפשר טיפול בפרופילים בסיסיים דחוסים או לא דחוסים (Ic61a0)

גרסה 1.2.1

גרסה 1.2.1

7 בדצמבר 2022

androidx.profileinstaller:profileinstaller:1.2.1 משוחרר. גרסה 1.2.1 כוללת את ההתחייבויות האלה.

תכונות חדשות

  • הפעל את profileinstaller עבור S_V2 (API 32) ו-TIRAMISU (API 33) (b/254900303).

גרסה 1.2.0

גרסה 1.2.0

27 ביולי 2022

androidx.profileinstaller:profileinstaller:1.2.0 משוחרר. גרסה 1.2.0 כוללת את ההתחייבויות האלה.

שינויים חשובים מאז 1.1.0

  • נוספה תמיכה בפורמט של פרופיל ART לשימוש ב-Android 12 ואילך.
  • כדאי להוסיף ממשקי API חדשים ב-ProfileInstallReceiver כדי לקבל תוצאות עקביות יותר ביחס ל-Macrobenchmarks כשמשתמשים בפרופילים בסיסיים.

גרסה 1.2.0-rc01

15 ביוני 2022

androidx.profileinstaller:profileinstaller:1.2.0-rc01 משוחרר. גרסה 1.2.0-rc01 מכילה את שמירות האלה.

  • הגרסה הזו זהה ל-androidx.profileinstaller:profileinstaller:1.2.0-beta03.

גרסה 1.2.0-beta03

1 ביוני 2022

androidx.profileinstaller:profileinstaller:1.2.0-beta03 משוחרר. גרסה 1.2.0-beta03 מכילה את התחייבויות אלה.

גרסה 1.2.0-beta02

18 במאי 2022

androidx.profileinstaller:profileinstaller:1.2.0-beta02 משוחרר. גרסה 1.2.0-beta02 מכילה את התחייבויות אלה.

  • אין שינויים, שנדרשים כדי לתמוך בגרסאות 1.2.0-beta02 של פיתוח נייטיב.

גרסה 1.2.0-beta01

11 במאי 2022

androidx.profileinstaller:profileinstaller:1.2.0-beta01 משוחרר. גרסה 1.2.0-beta01 מכילה את התחייבויות אלה.

שינויים ב-API

  • כדאי להוסיף ממשקי API חדשים ב-ProfileInstallReceiver כדי לקבל תוצאות עקביות יותר ביחס ל-Macrobenchmarks כשמשתמשים בפרופילים בסיסיים. (If2ae5, b/215740637)

תיקוני באגים

  • מנהל ההתקנה של הפרופיל מציג הודעה מועילה כשמנסים להשתמש בפורמט V_001 של המטא-נתונים ב-Android 12 ואילך. (aosp/1978526, b/217502387)
  • מנהל ההתקנה של הפרופיל משתמש עכשיו בגרסה 1.1.1 של androidx.startup. (aosp/2077099, b/229828376)

גרסה 1.2.0-alpha02

26 בינואר, 2022

androidx.profileinstaller:profileinstaller:1.2.0-alpha02 משוחרר. גרסה 1.2.0-alpha02 מכילה את התחייבויות אלה.

הגרסה הזו זהה ל-1.2.0-alpha01.

גרסה 1.2.0-alpha01

12 בינואר, 2022

androidx.profileinstaller:profileinstaller:1.2.0-alpha01 משוחרר. גרסה 1.2.0-alpha01 מכילה את התחייבויות אלה.

תכונות חדשות

  • צריך להוסיף תמיכה בפורמט פרופיל ART שיהיה בשימוש ב-Android 12 ואילך.

גרסה 1.1.0

גרסה 1.1.0

9 בפברואר 2022

androidx.profileinstaller:profileinstaller:1.1.0 משוחרר. גרסה 1.1.0 כוללת את ההתחייבויות האלה.

גרסה 1.1.0-rc01

15 בדצמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-rc01 מופצת ללא עדכונים מאז 1.1.0-בטא04. גרסה 1.1.0-rc01 מכילה את שמירות האלה.

גרסה 1.1.0-beta04

1 בדצמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-beta04 משוחרר. גרסה 1.1.0-beta04 מכילה את התחייבויות אלה.

גרסה 1.1.0-beta03

17 בנובמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-beta03 משוחרר. גרסה 1.1.0-beta03 מכילה את התחייבויות אלה.

תיקוני באגים

  • עודכנה לתמיכה בכתיבה בגרסה 1.1.0-beta03

גרסה 1.1.0-beta02

3 בנובמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-beta02 משוחרר. גרסה 1.1.0-beta02 מכילה את התחייבויות אלה.

תיקוני באגים

  • עודכנה לתמיכה בכתיבה בגרסה 1.1.0-beta02

גרסה 1.1.0-beta01

27 באוקטובר 2021

androidx.profileinstaller:profileinstaller:1.1.0-beta01 משוחרר. גרסה 1.1.0-beta01 מכילה את התחייבויות אלה.

  • לא בוצעו שינויים מ-1.1.0-alpha07.

גרסה 1.1.0-alpha07

13 באוקטובר 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha07 משוחרר. גרסה 1.1.0-alpha07 מכילה את התחייבויות אלה.

תכונות חדשות

  • נוספה תמיכה ב-profm ב-Android N

גרסה 1.1.0-alpha06

29 בספטמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha06 משוחרר. גרסה 1.1.0-alpha06 מכילה את התחייבויות אלה.

תיקוני באגים

  • פתרון בעיות בהמרת קידוד של profileinstaller ב-N, O ו-O_MR1. (I12d75)

גרסה 1.1.0-alpha05

15 בספטמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha05 משוחרר. גרסה 1.1.0-alpha05 מכילה את התחייבויות אלה.

תיקוני באגים

  • תיקון תיקון של המרת קידוד של פרופיל ב-Android Nougat וב-Android Oreo לחבילות APK של Multidex.

גרסה 1.1.0-alpha04

1 בספטמבר 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha04 משוחרר. גרסה 1.1.0-alpha04 מכילה את התחייבויות אלה.

תיקוני באגים

  • צריך לתקן את ProfileInstaller כדי שאפליקציות שמשתמשות בפרופילים בסיסיים יוכלו להריץ נקודות מאקרו בקלות באמצעות CompilationMode.BaselineProfile. (I42657, b/196074999)

גרסה 1.1.0-alpha03

18 באוגוסט 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha03 משוחרר. גרסה 1.1.0-alpha03 מכילה את התחייבויות אלה.

תיקוני באגים

  • שינוי התנהגות הדילוג של profileinstaller כדי לתעד את PackageInfo.lastUpdatedTime בקובץ בספריית הקבצים של האפליקציה וב- להשוות אותו לפני התקנת הפרופיל בהפעלה הבאה. (Ib93d1)
  • שינוי הפורמט של הפרופיל במכשירי P, Q ו-R בהתאם לדרישות של ART (I84e89)

גרסה 1.1.0-alpha02

4 באוגוסט 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha02 משוחרר. גרסה 1.1.0-alpha02 מכילה את התחייבויות אלה.

בוצע עדכון להתאמה לכתיבה בגרסה 1.1.0-alpha01.

גרסה 1.1.0-alpha01

21 ביולי 2021

androidx.profileinstaller:profileinstaller:1.1.0-alpha01 משוחרר. גרסה 1.1.0-alpha01 מכילה את התחייבויות אלה.

תיקוני באגים

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

גירסה 1.0

גרסה 1.0.4

13 באוקטובר 2021

androidx.profileinstaller:profileinstaller:1.0.4 משוחרר. גרסה 1.0.4 כוללת את ההתחייבויות האלה.

  • עודכנה לתמיכה בכתיבה 1.0.4

גרסה 1.0.3

29 בספטמבר 2021

androidx.profileinstaller:profileinstaller:1.0.3 משוחרר. גרסה 1.0.3 מכילה את ההתחייבויות האלה.

  • עודכנה לתמיכה בכתיבה 1.0.3

גרסה 1.0.2

1 בספטמבר 2021

androidx.profileinstaller:profileinstaller:1.0.2 משוחרר. גרסה 1.0.2 כוללת את ההתחייבויות האלה.

תיקוני באגים

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

גרסה 1.0.1

4 באוגוסט 2021

androidx.profileinstaller:profileinstaller:1.0.1 משוחרר. גרסה 1.0.1 כוללת את ההתחייבויות האלה.

עודכנה להתאמה לכתיבה 1.0.1.

גרסה 1.0.0

28 ביולי 2021

androidx.profileinstaller:profileinstaller:1.0.0 משוחרר. גרסה 1.0.0 מכילה את ההתחייבויות האלה.

התכונות העיקריות של 1.0.0

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

מידע נוסף על כללי הפרופיל האלה ועל אופן הפעולה שלהם זמין בנתוני הגרסה המפורטים בכתובת 1.0.0-beta01.

גרסה 1.0.0-rc02

14 ביולי 2021

androidx.profileinstaller:profileinstaller:1.0.0-rc02 משוחרר. גרסה 1.0.0-rc02 מכילה את ההתחייבויות האלה.

גרסה 1.0.0-rc01

1 ביולי 2021

androidx.profileinstaller:profileinstaller:1.0.0-rc01 משוחרר. גרסה 1.0.0-rc01 מכילה את ההתחייבויות האלה.

זוהי גרסת RC ללא שינויים מגרסת הבטא.

גרסה 1.0.0-beta01

16 ביוני 2021

androidx.profileinstaller:profileinstaller:1.0.0-beta01 משוחרר. גרסה 1.0.0-beta01 מכילה את התחייבויות אלה.

מטרת הספרייה

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

התקנת הפרופיל הזו הושלמה באמצעות ספריית androidx.startup. אם מסיבה כלשהי רוצים להשבית את התקנת הפרופיל, הם יכולים לשנות את המניפסט ולהסיר אותו:


       <provider
           android:name="androidx.startup.InitializationProvider"
           android:authorities="${applicationId}.androidx-startup"
           android:exported="false"
           tools:node="merge">
           <meta-data android:name="androidx.profileinstaller.ProfileInstallerInitializer"
                     tools:node="remove" />
       </provider>

האפשרות הזאת שימושית במיוחד אם לאפליקציה יש דרישות הפעלה לא טריות, וברצונך להפעיל את התקנת הפרופיל באופן ידני באמצעות ה-API של ProfileInstaller.writeProfile.

מהם כללי פרופיל?

  • כללי פרופיל עבור ספרייה מוגדרים בקובץ הטקסט baseline-prof.txt שנמצא בספרייה src/main או בספרייה מקבילה. הקובץ מציין כלל בכל שורה, כאשר כלל במקרה הזה הוא דפוס להתאמה ל-methods או מחלקות בספרייה. התחביר של הכללים האלה הוא קבוצת-על של פורמט פרופיל ART קריא לאנשים, שנעשה בו שימוש כשמשתמשים ב-adb shell profman --dump-classes-and-methods .... לכללים אלה יש אחת משתי דרכים לטירגוט שיטות או מחלקות.

  • כלל שיטה צריך לכלול את הדפוס הבא:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • וכלל מחלקה יהיה הדפוס הבא:

    <CLASS_DESCRIPTOR>
    
  • הערך <FLAGS> הוא אחד או יותר מהתווים H, S ו-P כדי לציין אם יש לסמן את השיטה הזו כ'חם', 'הפעלה' או 'פוסט סטארט-אפ'.

  • <CLASS_DESCRIPTOR> הוא המתאר של המחלקה שאליה שייכת שיטת הטירגוט. לדוגמה, המחלקה androidx.compose.runtime.SlotTable תקבל מתאר של Landroidx/compose/runtime/SlotTable;.

  • <METHOD_SIGNATURE> הוא החתימה של השיטה, והוא כולל את השם, סוגי הפרמטרים וסוגי ההחזרה של השיטה. לדוגמה, השיטה fun isPlaced(): Boolean ב-LayoutNode כוללת את החתימה isPlaced()Z.

  • לתבניות האלה יכולים להיות תווים כלליים לחיפוש (**, * ו-?) כדי שכלל יחיד יכלול כמה שיטות או מחלקות.

למה משמשים הכללים?

  • שיטה עם הדגל H מציינת שהשיטה הזו היא 'חם' וצריך להרכיב אותה מראש.

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

  • שיטה עם הדגל P מציינת שזו שיטה שנקראת אחרי ההפעלה.

  • מחלקה שנמצאת בקובץ הזה מצביעה על כך שנעשה בו שימוש במהלך ההפעלה וצריך להקצות אותו מראש בערימה כדי למנוע את עלות הטעינה של הכיתה.

כיצד זה עובד?

  • ספריות יכולות להגדיר את הכללים האלה, שיישמרו בפריטי מידע שנוצרו בתהליך הפיתוח (Artifact) של AAR. לאחר מכן, לאחר היצירה של APK שכולל את ארטיפקטים האלה, הכללים האלה ממוזגים יחד, והכללים הממוזגים משמשים כדי לבנות פרופיל ART בינארי קומפקטי שהוא ספציפי ל-APK. לאחר מכן ART יכול להשתמש בפרופיל הזה כשה-APK מותקן במכשירים כדי ליצור מראש קבוצת משנה ספציפית של האפליקציה ולשפר את הביצועים של האפליקציה, במיוחד בהפעלה הראשונה. הערה: לא תהיה לכך השפעה על אפליקציות שניתנות לניפוי באגים.

  • צריך לתת לקובצי הכללים את השם baseline-prof.txt ולהציב בספריית השורש של קבוצת המקור הראשית (הוא צריך להיות קובץ אחות לקובץ AndroidManifset.xml)

  • נכון לעכשיו, ייעשה שימוש בקבצים האלה רק אם אתם משתמשים בפלאגין Android Gradle מגרסה 7.0 ואילך, וכרגע מופעל רק עם דגל ב-gradle.properties:

    # Enable adding baseline-prof.txt files to AAR artifacts, and binary profiles to APKs
    android.experimental.enableArtProfiles=true
    

בפרופילים נדרשת יתרה

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