השוואה לשוק

מדידה מדויקת של ביצועי הקוד ב-Android Studio.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫9 בספטמבר 2026 1.5.0 - - -

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

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

Macrobenchmark

כדי להשתמש ב-Macrobenchmark בפרויקט, מוסיפים את יחסי התלות הבאים לקובץ build.gradle של מודול המקרו-בנצ'מרק:

Groovy

dependencies {
  androidTestImplementation "androidx.benchmark:benchmark-macro-junit4:1.5.0"
}

Kotlin

dependencies {
  androidTestImplementation("androidx.benchmark:benchmark-macro-junit4:1.5.0")
}

מיקרו-בנצ'מרק

כדי להשתמש ב-Microbenchmark בפרויקט, מוסיפים את יחסי התלות הבאים לקובץ build.gradle של מודול המיקרו-בנצ'מרק:

Groovy

dependencies {
    androidTestImplementation "androidx.benchmark:benchmark-junit4:1.5.0"
}

android {
    ...
    defaultConfig {
        ...
        testInstrumentationRunner "androidx.benchmark.junit4.AndroidBenchmarkRunner"
    }
}

Kotlin

dependencies {
    androidTestImplementation("androidx.benchmark:benchmark-junit4:1.5.0")
}

android {
    ...
    defaultConfig {
        ...
        testInstrumentationRunner = "androidx.benchmark.junit4.AndroidBenchmarkRunner"
    }
}

ספריית Microbenchmark מספקת גם פלאגין של Gradle לשימוש עם מודול המיקרו-ביצועים. הפלאגין הזה מגדיר את הגדרות ברירת המחדל של תצורת ה-build למודול, מגדיר העתקה של פלט של מדד ביצועים למארח ומספק את המשימה ./gradlew lockClocks.

כדי להשתמש בפלאגין, מוסיפים את השורה הבאה לבלוק 'plugins' בקובץ build.gradle ברמה העליונה:

Groovy

plugins {
  id 'androidx.benchmark' version '1.5.0' apply false
}

Kotlin

plugins {
  id("androidx.benchmark") version "1.5.0" apply false
}

לאחר מכן מחילים את הפלאגין על הקובץ build.gradle של מודול ההשוואה לשוק

Groovy

plugins {
  id 'androidx.benchmark'
}

Kotlin

plugins {
    id("androidx.benchmark")
}

משוב

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

יצירת דיווח על בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.

גירסה 1.5

גרסה 1.5.0

‫9 בספטמבר 2026

androidx.benchmark:benchmark-*:1.5.0 מופץ. גרסה 1.5.0 מכילה את השמירות האלה.

גרסה ‎1.5.0-rc02

‫26 באוגוסט 2026

androidx.benchmark:benchmark-*:1.5.0-rc02 מופץ. גרסה ‎1.5.0-rc02 מכילה את השמירות האלה.

גרסה ‎1.5.0-rc01

‫12 באוגוסט 2026

androidx.benchmark:benchmark-*:1.5.0-rc01 מופץ. גרסה ‎1.5.0-rc01 מכילה את השמירות האלה.

גרסה ‎1.5.0-beta01

‫29 ביולי 2026

androidx.benchmark:benchmark-*:1.5.0-beta01 מופץ. גרסה ‎1.5.0-beta01 מכילה את השמירות האלה.

שינויים ב-API

  • מעכשיו PerfettoCapture ו-PerfettoTraceRule יכולים ללכוד עקבות בתהליך ולמזג אותם לחבילת יעד. ‫(I9a00b, ‏ b/497959820)

גרסה ‎1.5.0-alpha07

‫1 ביולי 2026

androidx.benchmark:benchmark-*:1.5.0-alpha07 מופץ. גרסה ‎1.5.0-alpha07 מכילה את השמירות האלה.

שינויים ב-API

  • לכידת מעקב ב-Perfetto במכשיר בצורה פשוטה יותר. (I48810)
  • העברה של ממשקי API ניסיוניים של התוסף TraceProcessor.runServer מ-androidx.benchmark:benchmark-macro אל androidx.benchmark:benchmark-common, ואל חבילת androidx.benchmark. כך יהיה אפשר להשתמש בהם בעתיד בבדיקות מיקרו. (Ie25bb, b/393640753)

תיקוני באגים

  • עדכון ההטמעה של traceprocessor (וגם של Perfetto Trace capture לא מקובץ) לשימוש ב-Perfetto גרסה 56.0‏ (I8fb9d)
  • כברירת מחדל, הערכים של androidx.benchmark.requireAot ו-androidx.benchmark.requireAot הם true. הגדרות ברירת המחדל הבטוחות יותר האלה מבטיחות שההידור יתבצע לפני הפעלת מיקרו-בנצ'מרקים (מופעל כברירת מחדל באמצעות תוסף הבנצ'מרק של Gradle כשמשתמשים ב-AGP מגרסה 8.4 ואילך), ושהפונקציה measureRepeated לא תופעל בשרשור הראשי, שבו היא עלולה לגרום ל-ANR. (I1bc3c, b/379115078)
  • הארכנו את משך הזמן הקצוב לתפוגה של perfetto מ-5 ל-30 שניות (רק עבור הפעלות של Perfetto שנלכדו לצורך השוואה). הוספנו רישום שגיאות ברור יותר ביומן כשהבעיה מתרחשת. (If188f, b/435589290)

גרסה ‎1.5.0-alpha06

‫6 במאי 2026

androidx.benchmark:benchmark-*:1.5.0-alpha06 מופץ. גרסה ‎1.5.0-alpha06 מכילה את השמירות האלה.

תיקוני באגים

  • הטיפול בסביבות מרובות משתמשים צריך להיות חלק כשמעבירים קבצים מספריית הפלט של ההשוואה לספריית הפלט של הבדיקה הנוספת. (I90da5, ‏ b/489358149)

גרסה ‎1.5.0-alpha05

‫25 במרץ 2026

androidx.benchmark:benchmark-*:1.5.0-alpha05 מופץ. גרסה ‎1.5.0-alpha05 מכילה את השמירות האלה.

תיקוני באגים

  • בוצע עדכון של ArtMetric כדי להתחשב בחבילות ברמה העליונה, וזה חשוב במיוחד כשמשתמשים ב-AGP/R8 בגרסה 9.1 ואילך, או באפשרות הגלובלית -repackageclasses. בעבר, ArtMetric לא הצליח לזהות את העומסים האלה בכיתות במדידות של artClassLoad.... (If8a35, ‏ b/487402058)

תכונות חדשות - נוסף ארגומנט חדש של מכשור androidx.benchmark.requireLockedClocks שמאפשר להפעיל בדיקה כדי לראות אם שעוני המעבד נעולים במכשירים עם הרשאות רוט. (Id82e8, b/468039042)

גרסה ‎1.5.0-alpha04

‫11 במרץ 2026

androidx.benchmark:benchmark-*:1.5.0-alpha04 מופץ. גרסה ‎1.5.0-alpha04 מכילה את השמירות האלה.