מבצע מעקב
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 9 בספטמבר 2026 | 2.0.2 | - | - | - |
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
מבצע מעקב
גרסה 2.0
גרסה 2.0.2
9 בספטמבר 2026
androidx.tracing:tracing-*:2.0.2 מופץ. גרסה 2.0.2 מכילה את השמירות האלה.
גרסה 2.0.1
26 באוגוסט 2026
androidx.tracing:tracing-*:2.0.1 מופץ. גרסה 2.0.1 מכילה את השמירות האלה.
גרסה 2.0.0
12 באוגוסט 2026
androidx.tracing:tracing-*:2.0.0 מופץ. גרסה 2.0.0 מכילה את השמירות האלה.
התכונות העיקריות בגרסה 2.0.0:
ממשק API חדש בתוך התהליך מאפשר:
- תיעוד תוכן של עקבות בתהליך, בשדה
- תהליכי עבודה ב-Perfetto (חיצים ממקטע אחד למקטע אחר)
- הערות ב-Perfetto (מטא-נתונים של פרוסות עם מפתח/ערך)
-
traceCoroutine() {}– Coroutine Tracing API שמתעד מעברים בין שרשורים - Category filtering
- תקורה נמוכה משמעותית בהשוואה ל-API הקיים של
android.os.Traceולעטיפה שלtrace() {} - מעקב אחר KMP – אפשר להשתמש בו בספריות ללא תלות ב-Android ובפרויקטים של JVM במארח
- אחרי העובדה מיזוג עם תיעוד של עקבות המערכת (הוטמע כברירת מחדל ב-AndroidX Benchmark 1.5)
הערה: ממשקי ה-API החדשים למעקב מתעדים נתונים במאגר שנשלט על ידי תהליך, ועדיין לא מתועדים בהקלטת מעקב המערכת של Studio. הבעיה הזו תטופל בכלי הפרופילים של Studio באחת מהגרסאות הבאות.
ממשקי ה-API הקיימים של android.os.Trace / trace() {} לא הוצאו משימוש. עדיין מומלץ להשתמש בממשקי ה-API האלה לאירועים בתדירות נמוכה שתמיד צריך לתעד במאגר הזמני של מעקב המערכת, במיוחד בספריות.
גרסה 2.0.0-rc01
29 ביולי 2026
androidx.tracing:tracing-*:2.0.0-rc01 מופץ. גרסה 2.0.0-rc01 מכילה את השמירות האלה.
גרסה 2.0.0-beta01
15 ביולי 2026
androidx.tracing:tracing-*:2.0.0-beta01 מופץ. גרסה 2.0.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- מעכשיו
PerfettoCaptureו-PerfettoTraceRuleיכולים ללכוד עקבות בתהליך ולמזג אותם לחבילת יעד. (I9a00b, b/497959820) - הציון של
androidx.benchmarkהוא עכשיוminSdkמתוך 24. (Ic2a85)
תיקוני באגים
- גרסה Tracing 2.0-beta01. (I1b162)
- כשיוצרים מידע על טראקים, צריך להשתמש במזהי שרשורים ספציפיים לפלטפורמה. (I6ba64)
גרסה 2.0.0-alpha09
23 ביוני 2026
androidx.tracing:tracing-*:2.0.0-alpha09 מופץ. גרסה 2.0.0-alpha09 מכילה את השמירות האלה.
שינויים ב-API
- שינוי קל ב-API של
Tracerכדי להבחין ביןinstant(...)לביןwriteInstant(...). (I0935a) - הוספת תמיכה באסימוני הפצה באירועים מיידיים. (I99f81)
- יש הרשאה לשימוש מלא בזרימות של Perfetto ב-API הניסיוני להפצת הקשר ידנית. (I20cb6)
- דחיית היצירה של
BufferedSinkו-ProtoWriterב-TraceSink. (Ibd098) - הופכים את
Tracerלגילוי פשוט וניתן להרחבה גם בספריות Java וגם בספריות Android. (I99111) - כדאי להקל על מפתחי ספריות לגלות מופע של
TraceDriverשאפשר להשתמש בו למעקב בתוך התהליך. (Ia503e)
גרסה 2.0.0-alpha08
19 במאי 2026
androidx.tracing:tracing-*:2.0.0-alpha08 מופץ. גרסה 2.0.0-alpha08 מכילה את השמירות האלה.
שינויים ב-API
- נוספה האפשרות לגלות מקרים של
TraceDriverולבטל אותם לשימוש בכל התהליך. (I3f715) - שינוי השם של
Tracer.recordExceptionל-Tracer.recordExceptionAndThrow. (I4411f, b/503092450)
גרסה 2.0.0-alpha07
6 במאי 2026
androidx.tracing:tracing-*:2.0.0-alpha07 מופץ. גרסה 2.0.0-alpha07 מכילה את השמירות האלה.
שינויים ב-API
- הוספת API כדי לקבל כלי למעקב אחר קוד זמני שאפשר להשתמש בו כשהמעקב מושבת. (I84c98)
- התאמת מחזור החיים של המעקב למעקב המערכת. (Ib391b)
- ממשקי ה-API של מונה לא דורשים יותר הקצאה. (I5e73a)
תיקוני באגים
- תוקן כלל שמירה עבור Perfetto SDK (
tracing-perfetto), כדי להבטיח שאפשר יהיה להפעיל את Perfetto SDK. (I1d227) - הוספת האפשרות לעקוב אחרי אירועים מסוג
flush(). (I38014, b/495852704)
גרסה 2.0.0-alpha06
22 באפריל 2026
androidx.tracing:tracing-*:2.0.0-alpha06 מופץ. גרסה 2.0.0-alpha06 מכילה את השמירות האלה.
שינויים ב-API
- הסרת ההגבלה על
File.createPerfettoFile()כדי שאחרים יוכלו ליצור מאגרי נתונים בבטחה. כש-block()יוצר חריגה ב-trace/traceCoroutine, צריך ליצור אירועinstantלחריגה עם המטא-נתונים שמייצגים את רכיבי דוח הקריסות המתאימים. (I682e5, b/501536851, b/437166283) - מוסיפים
setCounter(...)עומס יתר שמקבל סוגLongשל Java. (Ic0469, b/356082604) - ב-Tracing 2.0 נעשה עכשיו שימוש ב-
Longלמזהים ספציפיים לכל פלטפורמהThread. (I67277)
תיקוני באגים
- שיפור התיעוד של
AttributeEntry.reset(). (I5d3a1, b/496079439)
גרסה 2.0.0-alpha05
8 באפריל 2026
androidx.tracing:tracing-*:2.0.0-alpha05 מופץ. גרסה 2.0.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
- פונקציות של
TraceSinkמחזירות עכשיוTraceSinkולאAbstractTraceSink. הקבצים מקבלים עכשיו סיומת ייחודית. אנחנו מוודאים שאפשר ליצור באופן אטומי קובץ חדש שישמש לאחסון מנות של נתוני מעקב. (I4c4aa, b/496298726) - לפשט את ההפצה של הקשר של קורוטינות ולזרז אותה. (Ia62db)
- אפשר להשתמש ב-
attributes()האופציונלי כשיוצריםTraceDriverשמאפשר להוסיף מטא-נתונים שקשורים למעקב. (Ia147e)
תיקוני באגים
- שרשורי התהליכים ומסלולי המונים מסונכרנים עכשיו. התיקון הזה מתייחס לחריגים מהסוג הבא:
java.lang.NullPointerException: Cannot invoke "androidx.tracing.ThreadTrack.flush$tracing()" because "threadTrack" is null - הימנעו מפליטת אירועים של יעד כשמעקב מושבת.
גרסה 2.0.0-alpha04
25 במרץ 2026
androidx.tracing:tracing-*:2.0.0-alpha04 מופץ. גרסה 2.0.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- הופכים את
AbstractTraceDriverלמשהו מופשט באמת, ומעבירים את ההטמעה שלPerfettoלמודולtracing-wire. (Ie2f59) - כדאי לתת שמות תיאוריים יותר להטמעות בסיסיות כדי להימנע משימוש בהטמעה הלא נכונה. מפתחים שהשתמשו בעבר ב-
androidx.tracing.Trace{Sink|Driver}יצטרכו לעבור לשימוש ב-AbstractTrace{Sink|Driver}. (I9b46d)
גרסה 2.0.0-alpha03
11 במרץ 2026
androidx.tracing:tracing-*:2.0.0-alpha03 מופץ. גרסה 2.0.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- הוספנו הטמעה ניסיונית של
InMemoryRingBufferTraceSinkשמאפשרת להגדיר מגבלת קיבולת ומונעת כתיבה לדיסק אלא אם מבקשים זאת במפורש. (I1dc44, b/484409653, I65a37, b/484409653) - תיקון מרוץ תהליכים כשמשדרים אירועי יומן מעקב להשעיות ולחידושים של שגרות המשך (coroutine). (Ie145e)
תיקוני באגים
androidx.tracingכבר לא מנסה ליצור חיבורים מקורוטינות של הורה לקורוטינות של צאצאים בנתוני מעקב כברירת מחדל. הדבר הזה עלול לבלבל, כי פורמט נתוני המעקב הבסיסי לא תומך בחיבורים מסוג1:Nו-N:1, ולכן נוצרת שרשרת של חיצים בגלל חוסר בהירות לגבי החיבורים בין חלקי שגרת המשך. עדיין אפשר להפעיל את ההפצה באופן ידני באמצעותtokenForManualPropagation()API כשזה חשוב לתרחיש השימוש שלכם. (Ib2cf9)
גרסה 2.0.0-alpha02
25 בפברואר 2026
androidx.tracing:tracing-*:2.0.0-alpha02 מופץ. גרסה 2.0.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- שיפור הביצועים בהטמעה של Perfetto Trace Sink באמצעות
suspendCoroutineUninterceptedOrReturnintrinsic (2ea97b).
גרסה 2.0.0-alpha01
28 בינואר 2026
androidx.tracing:tracing-*:2.0.0-alpha01 מופץ. גרסה 2.0.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
AndroidX Tracing 2.0 מציג ממשק API חדש ומשמעותי למעקב בתוך התהליך עם תקורה נמוכה, כתוספת לממשקי ה-API הקיימים שמבוססים על android.os.Tracing ב-Tracing 1.0. ממשקי ה-API החדשים זמינים גם ב-Android וגם ב-JVM של המארח, מה שמאפשר לכלי המארח לפלוט עקבות עם תקורה נמוכה לניתוח ביצועים, באמצעות אותו פורמט עקבות סטנדרטי של Perfetto.
נתוני מעקב שנוצרו נתמכים גם על ידי Android Studio וגם על ידי Perfetto, ואפשר לתעד אותם באמצעות קבוצת תכונות מורחבת, כולל תיוג של תבניות של תוכן דינמי במטא-נתונים (כמו ארגומנטים של פונקציות!) והפצה של נתוני מעקב בהקשר של שגרות המשך (coroutine).
גרסת האלפא הראשונית הזו מיועדת רק לרצפי עבודה של מעקב בתוך התהליך, ועדיין לא משולבת עם מעקב במערכת ההפעלה Android או עם מעקב במערכת Studio Profiler – השילובים האלה יגיעו בגרסת אלפא עתידית.
/**
* A [TraceSink] defines how traces are serialized.
*
* [androidx.tracing.wire.TraceSink] uses the `Perfetto` trace packet format.
*/
fun createSink(): TraceSink {
val outputDirectory = File(/* pathname = */ "/tmp/perfetto")
// We are using the factory function defined in androidx.tracing.wire
return TraceSink(
sequenceId = 1,
directory = outputDirectory
)
}
/**
* Creates a new instance of [androidx.tracing.TraceDriver].
*/
fun createTraceDriver(): TraceDriver {
// We are using a factory function from androidx.tracing.wire here.
// `isEnabled` controls whether tracing is enabled for the application.
val driver = TraceDriver(sink = createSink(), isEnabled = true)
return driver
}
fun main() {
val driver = createTraceDriver()
driver.use {
driver.tracer.trace(category = CATEGORY_MAIN, name = "basic") {
Thread.sleep(100L)
}
}
}
שינויים ב-API
- להגדיר את
Tracerכמאפיין שלTraceDriver. (Iabd9b) - הוספת תמיכה בהעברת הקשר באופן ידני. (I899ff)
- הוספנו אפשרות להוסיף מידע על סטאק ביצוע בקטע של מעקב. (If6a1b)
- הצגת ממשקי ה-API החדשים של
androidx.tracing. (I5102b) - לאפשר לאירועים מיידיים להכיל מטא-נתונים, ולהוסיף מוני אירועים מיידיים ומונים. (Ia2ed3)
- מצמצמים את שטח הפנים של ה-API עם ההערה
@DelicateTracingApi. אף פונקציה ב-API ברמה העליונה לא צריכה להשתמש ב-@DelicateTracingApi. (I565e0) - פישוט של העברת ההקשר על ידי איחוד של
PropagationToken. (Iab839) - ייצוב ממשקי ה-API של
BlackHoleב-androidx.benchmark. (I2b67e, b/451749438) - הוספנו אפשרות להוסיף הערות לקטע של מעקב כטווח בסיסי. (Ic8365)
- לאפשר למפתח לציין במפורש את אסימוני ההפצה. (I06bb1)
- השם של
MetadataHandleCloseableשונה ל-EventMetadataCloseable, והשם שלMetadataHandleשונה ל-EventMetadata. נוסף גם ארגומנט אופציונליCoroutinePropagationTokenל-Tracer.traceCoroutineכדי לאפשר למפתח לציין באופן מפורש את אסימון ההפצה שבו רוצים להשתמש. (I219f7, b/454147392) - הוספנו
Tracerנקודת כניסה חדשה שמאפשרת למפתחים לשלוט טוב יותר באופן המעקב. (I24a7b) - הוספת היכולת לשלוט באופן ההפצה של ההקשר ב-
SliceTrack. (Ieb8fc) -
fillCountב-PooledTracePacketArrayמסומן עכשיו בצורה נכונה כמשתנה. (I75d2c) - סימון ההשתתפות של
MetadataEntry(@DelicateTracingApi). (I8c723) - הוספת היכולת ל-
TraceSinkלטפל באירועי מעקב שאבדו (כשהמאגר מוצה). (I3b374) - הוספת האפשרות לפלוט אירועי מעקב באופן מותנה על סמך פרדיקט. (I621b4)
- הוספת האפשרות להוסיף קטגוריות לאירוע במעקב. (I449c2)
- סימון ההשתתפות של
TraceEvent(PooledTracePacketArray) כDelicateTracingApi. (Iaac6d) - הפיכת
ProcessTrack.id,ThreadTrack.id,ThreadTrack.name,CounterTrack.nameו-CounterTrack.parentלציבוריים. (I81210) - השם של
SliceTrack.traceFlow()API שונה ל-traceCoroutine(). (I79ad0) - הוספנו את האפשרות להוסיף מידע הקשרי לפרוסות באמצעות הערות לניפוי באגים במעקב Perfetto. (Ic2b56)
- אפשר ליצור מופע של
WireTraceSinkעםFile/OutputStream. (Iecea0) - הסרה של הערות
@RequiresApi(21)שיצאו משימוש (Ic4792)
גרסה 1.3
גרסה 1.3.0
23 באפריל 2025
הגרסאות androidx.tracing:tracing:1.3.0, androidx.tracing:tracing-android:1.3.0 וגם androidx.tracing:tracing-ktx:1.3.0 יוצאות. גרסה 1.3.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.2.0
- המרתי את המחלקה
androidx.tracing.Traceל-Kotlin והעברתי את כל הקוד מהמודולtracing-ktxאלtracing. - מסירים את crossinline מה-trace כדי לאפשר שימוש ב-
@Composable. (I53882, b/248344805)
גרסה 1.3.0-rc01
9 באפריל 2025
הגרסאות androidx.tracing:tracing:1.3.0-rc01, androidx.tracing:tracing-android:1.3.0-rc01 ו-androidx.tracing:tracing-ktx:1.3.0-rc01 יוצאות ללא שינויים מאז גרסת הבטא האחרונה. גרסה 1.3.0-rc01 מכילה את השמירות האלה.
גרסה 1.3.0-beta01
12 בפברואר 2025
הגרסאות androidx.tracing:tracing:1.3.0-beta01, androidx.tracing:tracing-android:1.3.0-beta01 וגם androidx.tracing:tracing-ktx:1.3.0-beta01 יוצאות. גרסה 1.3.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- העברנו את כל הקוד מהמודול
tracing-ktxאלtracing. (Iba550) - המרת המחלקה
androidx.tracing.Traceל-Kotlin. (Ie4e5d)
תיקוני באגים
- הסרנו את האפשרות ליצור באופן ידני תרשים של הגישה לממשקי API חדשים של הפלטפורמה, כי זה קורה באופן אוטומטי באמצעות מידול API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל R8 גרסה 3.3) ובכל הבנייה כשמשתמשים ב-AGP 8.1 ואילך (למשל D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלץ לעדכן לגרסה 8.1 של D8 או לגרסה מאוחרת יותר. למידע נוסף, מומלץ לעיין במאמר הזה. (Ia60e0, b/345472586)
גרסה 1.3.0-alpha02
21 ביוני 2023
הגרסאות androidx.tracing:tracing:1.3.0-alpha02 ו-androidx.tracing:tracing-ktx:1.3.0-alpha02 יוצאות ללא שינויים מהגרסה הקודמת של אלפא. גרסה 1.3.0-alpha02 מכילה את השמירות האלה.
גרסה 1.3.0-alpha01
7 ביוני 2023
androidx.tracing:tracing:1.3.0-alpha01 וגם androidx.tracing:tracing-ktx:1.3.0-alpha01 מופצים. גרסה 1.3.0-alpha01 מכילה את השמירות האלה.
שינויים ב-API
- מסירים את crossinline מה-trace כדי לאפשר שימוש ב-
@Composable. (I53882, b/248344805)
גרסה 1.2
גרסה 1.2.0
29 בנובמבר 2023
androidx.tracing:tracing:1.2.0 וגם androidx.tracing:tracing-ktx:1.2.0 מופצים. גרסה 1.2.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.1.0
- הוספת וריאציות של
trace()ושלtraceAsync()עם מחשוב עצל של מחרוזות וקובצי Cookie. בנוסף, עכשיו המערכת מדלגת עלTrace.endבצורה נכונה אםTrace.beginמופעל.
גרסה 1.2.0-rc01
24 במאי 2023
androidx.tracing:tracing:1.2.0-rc01 וגם androidx.tracing:tracing-ktx:1.2.0-rc01 מופצים. גרסה 1.2.0-rc01 מכילה את השמירות האלה.
תיקוני באגים
- מניעת קריסות כשמועברים שמות ארוכים של קטעי מעקב על ידי חיתוך אוטומטי (Iaf6e2)
גרסה 1.2.0-beta04
3 במאי 2023
הגרסאות androidx.tracing:tracing:1.2.0-beta04 ו-androidx.tracing:tracing-ktx:1.2.0-beta04 יוצאות ללא שינויים. גרסה 1.2.0-beta04 מכילה את השמירות האלה.
גרסה 1.2.0-beta03
5 באפריל 2023
הגרסאות androidx.tracing:tracing:1.2.0-beta03 ו-androidx.tracing:tracing-ktx:1.2.0-beta03 יוצאות ללא שינויים חדשים. גרסה 1.2.0-beta03 מכילה את השמירות האלה.
גרסה 1.2.0-beta02
22 במרץ 2023
הגרסאות androidx.tracing:tracing:1.2.0-beta02 ו-androidx.tracing:tracing-ktx:1.2.0-beta02 לא כוללות שינויים מאז גרסת הבטא הקודמת. גרסה 1.2.0-beta02 מכילה את השמירות האלה.
גרסה 1.2.0-beta01
8 במרץ 2023
הגרסאות androidx.tracing:tracing:1.2.0-beta01 ו-androidx.tracing:tracing-ktx:1.2.0-beta01 לא כוללות שינויים מאז גרסת האלפא האחרונה. גרסה 1.2.0-beta01 מכילה את השמירות האלה.
גרסה 1.2.0-alpha02
23 בפברואר 2023
הגרסאות androidx.tracing:tracing:1.2.0-alpha02 ו-androidx.tracing:tracing-ktx:1.2.0-alpha02 יוצאות ללא שינויים מהגרסה הקודמת (אלפא). גרסה 1.2.0-alpha02 מכילה את השמירות האלה.
תיקוני באגים
- בגרסה הזו תוקנה שגיאה מספר
Could not find androidx.tracing:tracing-ktx:1.2.0-alpha02שמתרחשת כשמשדרגים לגרסהandroidx.tracing: tracing-perfetto-common:1.0.0-alpha11
גרסה 1.2.0-alpha01
5 באוקטובר 2022
androidx.tracing:tracing:1.2.0-alpha01 וגם androidx.tracing:tracing-ktx:1.2.0-alpha01 מופצים. גרסה 1.2.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- הוספת וריאציות של
trace()ושלtraceAsync()עם מחשוב עצל של מחרוזות וקובצי Cookie. בנוסף, עכשיו המערכת מדלגת עלTrace.endבצורה נכונה אםTrace.beginמופעל. (I31421, b/175233952, b/247066503)
גרסה 1.1
גרסה 1.1.0
11 במאי 2022
androidx.tracing:tracing:1.1.0 וגם androidx.tracing:tracing-ktx:1.1.0 מופצים. גרסה 1.1.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.0.0
- הוספנו
Trace.forceEnableAppTracing()API כדי לאלץ הפעלה של לכידת קטע של מעקב אחר אפליקציה (כלומר, ממשקי android.os.Trace / androidx.tracing API) בגרסאות build שלא ניתן לבצע בהן ניפוי באגים. כדאי להפעיל את הפונקציה הזו בתחילת ההפעלה כדי לאפשר מעקב מדויק של המערכת שלא ניתן לניפוי באגים, לפני ההשקה של תג המניפסט שאפשר ליצור ממנו פרופיל ב-API 29. (I3a309) - נמנעות שגיאות באימות מחלקה כש-Trace.java נטען בפעם הראשונה (05f6b4 ו-cb101f)
גרסה 1.1.0-rc01
20 באפריל 2022
הגרסאות androidx.tracing:tracing:1.1.0-rc01 ו-androidx.tracing:tracing-ktx:1.1.0-rc01 שוחררו ללא שינויים מאז beta01. גרסה 1.1.0-rc01 מכילה את השמירות האלה.
גרסה 1.1.0-beta01
1 בדצמבר 2021
androidx.tracing:tracing:1.1.0-beta01 וגם androidx.tracing:tracing-ktx:1.1.0-beta01 מופצים. גרסה 1.1.0-beta01 מכילה את השמירות האלה.
לא בוצעו שינויים מאז 1.1.0-alpha02.
גרסה 1.1.0-alpha02
17 בנובמבר 2021
androidx.tracing:tracing:1.1.0-alpha02 וגם androidx.tracing:tracing-ktx:1.1.0-alpha02 מופצים. גרסה 1.1.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו את Trace.forceEnableAppTracing(), API ל<b>חייב הפעלה</b> של לכידת קטע של מעקב אחר אפליקציה (כלומר, android.os.Trace / andoridx.tracing APIs) בגרסאות build שלא ניתן לבצע בהן ניפוי באגים. צריך להפעיל את הפונקציה הזו בתחילת ההפעלה כדי להפעיל מעקב מדויק של המערכת שלא ניתן לניפוי באגים, לפני הצגת תג המניפסט שאפשר להגדיר בפרופיל ב-API 29. (I3a309)
גרסה 1.1.0-alpha01
3 בנובמבר 2021
androidx.tracing:tracing:1.1.0-alpha01 וגם androidx.tracing:tracing-ktx:1.1.0-alpha01 מופצים. גרסה 1.1.0-alpha01 מכילה את השמירות האלה.
תיקוני באגים
גירסה 1.0
גרסה 1.0.0
28 באוקטובר 2020
androidx.tracing:tracing:1.0.0 וגם androidx.tracing:tracing-ktx:1.0.0 מופצים. גרסה 1.0.0 מכילה את השמירות האלה.
התכונות העיקריות בגרסה 1.0.0
עוזר לכתוב אירועי מעקב למאגר הנתונים הזמני של מעקב המערכת. אפשר להשתמש בכלים כמו Systrace ו-Perfetto כדי להציג את הנתונים האלה באופן חזותי. הספרייה הזו מחליפה את המחלקה androidx.core.os.TraceCompat שהוצאה משימוש.
גרסה 1.0.0-rc01
14 באוקטובר 2020
androidx.tracing:tracing:1.0.0-rc01 וגם androidx.tracing:tracing-ktx:1.0.0-rc01 מופצים. גרסה 1.0.0-rc01 מכילה את השמירות האלה.
הגרסה הזו זהה לגרסה 1.0.0-beta01.
גרסה 1.0.0-beta01
24 ביוני 2020
הגרסאות androidx.tracing:tracing:1.0.0-beta01 ו-androidx.tracing:tracing-ktx:1.0.0-beta01 הושקו ללא שינויים מאז 1.0.0-alpha01. גרסה 1.0.0-beta01 מכילה את השמירות האלה.
גרסה 1.0.0-alpha01
10 ביוני 2020
androidx.tracing:tracing:1.0.0-alpha01 וגם androidx.tracing:tracing-ktx:1.0.0-alpha01 מופצים. גרסה 1.0.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
androidx.tracing היא ספרייה שעוזרת לכתוב אירועי מעקב למאגר המערכת של מעקב אחר פעולות. אפשר להשתמש בכלים כמו Systrace ו-Perfetto כדי להציג את הנתונים האלה באופן חזותי. הספרייה הזו מחליפה את המחלקה androidx.core.os.TraceCompat שהוצאה משימוש. הגרסה הראשונית היא 1.0.0-alpha01.
מעקב באמצעות Perfetto
גירסה 1.0
גרסה 1.0.1
19 בנובמבר 2025
הגרסאות androidx.tracing:tracing-perfetto:1.0.1, androidx.tracing:tracing-perfetto-binary:1.0.1 וגם androidx.tracing:tracing-perfetto-handshake:1.0.1 יוצאות. גרסה 1.0.1 מכילה את השמירות האלה.
תיקוני באגים
- תמיכה בגודל דף של 16KB (b7a7dd)
- הסרנו את האפשרות ליצור באופן ידני תרשים של הגישה לממשקי API חדשים של הפלטפורמה, כי זה קורה באופן אוטומטי באמצעות מידול API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל R8 גרסה 3.3) ובכל הבנייה כשמשתמשים ב-AGP 8.1 ואילך (למשל D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלץ לעדכן לגרסה 8.1 של D8 או לגרסה מאוחרת יותר. למידע נוסף, מומלץ לעיין במאמר הזה. (Ia60e0, b/345472586)
- לא מומלץ לצרף עותקים של
FastNative/CriticalNativeלספרייה, אלא להשתמש בעותקים של הפלטפורמה היציבה. (I8238a, b/35664282, b/280878596)
גרסה 1.0.0
4 באוקטובר 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0, androidx.tracing:tracing-perfetto-binary:1.0.0 וגם androidx.tracing:tracing-perfetto-handshake:1.0.0 יוצאות. גרסה 1.0.0 מכילה את השמירות האלה.
התכונות העיקריות בגרסה 1.0.0
- זו הגרסה היציבה הראשונה של ספריות Tracing-perfetto.
גרסה 1.0.0-rc01
20 בספטמבר 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-rc01, androidx.tracing:tracing-perfetto-binary:1.0.0-rc01 ו-androidx.tracing:tracing-perfetto-handshake:1.0.0-rc01 יוצאות ללא שינויים מאז גרסת הבטא האחרונה. גרסה 1.0.0-rc01 מכילה את השמירות האלה.
גרסה 1.0.0-beta03
30 באוגוסט 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-beta03, androidx.tracing:tracing-perfetto-binary:1.0.0-beta03 וגם androidx.tracing:tracing-perfetto-handshake:1.0.0-beta03 יוצאות. גרסה 1.0.0-beta03 מכילה את השמירות האלה.
- העלאת הגרסה כדי להתאים לגרסת androidx.benchmark.
גרסה 1.0.0-beta02
23 באוגוסט 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-beta02, androidx.tracing:tracing-perfetto-binary:1.0.0-beta02 וגם androidx.tracing:tracing-perfetto-handshake:1.0.0-beta02 יוצאות. גרסה 1.0.0-beta02 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו תמיכה במעקב בזמן הפעלת האפליקציה (cold start).
גרסה 1.0.0-beta01
18 ביולי 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-beta01, androidx.tracing:tracing-perfetto-binary:1.0.0-beta01 וגם androidx.tracing:tracing-perfetto-handshake:1.0.0-beta01 יוצאות. גרסה 1.0.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- השם של
androidx.tracing.perfetto.Traceשונה ל-androidx.tracing.perfetto.PerfettoSdkTrace(I44af8) - שם הקבוע exit code (קוד יציאה) שונה ל-result code (קוד תוצאה) בפרוטוקול, כדי לשמור על עקביות (Id1d1e)
- השם של
EnableTracingResponseשונה ל-Response. (I56275) - הוספנו אפשרות להפעיל מעקב אחר הפעלה מההתחלה (cold start) במצב מתמשך. נוספה פונקציה לניקוי (קבוע או לא) של מעקב אחר הפעלה במצב התחלתי (cold start). (Iaa09d)
- הפכנו את ממשקי ה-API של Tracing Perfetto SDK לעקביים עם
android.os.Trace. (I73ba0, b/282199917) - עברנו לדפוס factory ל-
LibrarySourceכדי לאפשר הוספה קלה של תרחישי שימוש עתידיים (למשל, טעינה ישירה של קובץ.so) ל-API אם יהיה צורך בכך. (I128df) - התאמה של פרמטרים
enableTracingColdStartenableTracingImmediate(I54126) - הארגומנט
killProcessהוסר ב-enableTracingColdStart(I81c4d)
גרסה 1.0.0-alpha17
21 ביוני 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha17, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha17 ו-androidx.tracing:tracing-perfetto-handshake:1.0.0-alpha17 יוצאות ללא שינויים מגרסת האלפא הקודמת. גרסה 1.0.0-alpha17 מכילה את השמירות האלה.
גרסה 1.0.0-alpha16
7 ביוני 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha16, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha16 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha16 יוצאות ללא שינויים מגרסת האלפא הקודמת. גרסה 1.0.0-alpha16 מכילה את השמירות האלה.
גרסה 1.0.0-alpha15
3 במאי 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha15, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha15 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha15 יצאו ללא שינויים. גרסה 1.0.0-alpha15 מכילה את השמירות האלה.
גרסה 1.0.0-alpha14
5 באפריל 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha14, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha14 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha14 יצאו ללא שינויים חדשים. גרסה 1.0.0-alpha14 מכילה את השמירות האלה.
גרסה 1.0.0-alpha13
22 במרץ 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha13, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha13 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha13 לא כוללות שינויים מאז הגרסה האחרונה. גרסה 1.0.0-alpha13 מכילה את השמירות האלה.
גרסה 1.0.0-alpha12
8 במרץ 2023
הגרסה של androidx.tracing:tracing-perfetto:1.0.0-alpha12, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha12 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha12 לא השתנתה מאז גרסת האלפא הקודמת. גרסה 1.0.0-alpha12 מכילה את השמירות האלה.
גרסה 1.0.0-alpha11
22 בפברואר 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha11, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha11 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha11 יצאו ללא שינויים. גרסה 1.0.0-alpha11 מכילה את השמירות האלה.
גרסה 1.0.0-alpha10
8 בפברואר 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha10, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha10 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha10 יוצאות ללא שינויים. גרסה 1.0.0-alpha10 מכילה את השמירות האלה.
גרסה 1.0.0-alpha09
10 בפברואר 2023
androidx.tracing:tracing-perfetto-binary:1.0.0-alpha09 מופץ. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
תכונות חדשות
- הגרסה החדשה מאפשרת לספריות אחרות של
androidx.tracing:tracing-perfetto*: 1.0.0-alpha09לפעול יחד.
11 בינואר 2023
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha09 ו-androidx.tracing:tracing-perfetto-common:1.0.0-alpha09 יוצאות ללא שינויים. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
גרסה 1.0.0-alpha08
7 בדצמבר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha08, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha08 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha08 יוצאות. גרסה 1.0.0-alpha08 מכילה את השמירות האלה.
תכונות חדשות
- שיפור הביצועים באמצעות אופטימיזציה של אופן הטיפול במחרוזות.
תיקוני באגים
- נוסף כלל proguard שמונע את גיזום השיטות של
PerfettoNativeאם נעשה שימוש בכיתה (מונע קריסה במקרה נישה כשמתבצעת אתחול של מעקב, אבל אין קריאות מעקב באפליקציה).
גרסה 1.0.0-alpha07
9 בנובמבר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha07, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha07 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha07 יוצאות. גרסה 1.0.0-alpha07 מכילה את השמירות האלה.
- הפחתנו את התקורה של JNI בממשקי API של
androidx.tracing:tracing-perfetto.
גרסה 1.0.0-alpha06
24 באוקטובר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha06, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha06 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha06 יוצאות. גרסה 1.0.0-alpha06 מכילה את השמירות האלה.
- העדכון הזה לא כולל שינויים, רק עדכון של מספר הגרסה כדי לסנכרן עם androidx.benchmark.
גרסה 1.0.0-alpha05
5 באוקטובר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha05, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha05 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha05 יוצאות. גרסה 1.0.0-alpha05 מכילה את השמירות האלה.
גרסה 1.0.0-alpha04
21 בספטמבר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha04, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha04 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha04 יוצאות. גרסה 1.0.0-alpha04 מכילה את השמירות האלה.
גרסה 1.0.0-alpha03
7 בספטמבר 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha03, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha03 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha03 יוצאות.
תכונות חדשות
- אין תכונות חדשות מגרסה 1.0.0-alpha02.
גרסה 1.0.0-alpha02
24 באוגוסט 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha02, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha02 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha02 יוצאות. גרסה 1.0.0-alpha02 מכילה את השמירות האלה.
תיקוני באגים
- כמה שיפורים באתחול של שירות Perfetto
- שיפרנו את הטיפול במקרים שבהם לא מתקבלת תשובה, והוספנו קוד יציאה ייעודי: RESULT_CODE_CANCELLED.
- שיפרנו את הטיפול בשגיאות ניתוח.
- הגדרנו את
EnableTracingResponse.requiredVersionכ-nullable, כי אנחנו לא יכולים לדעת את הגרסה אם אנחנו לא יכולים לתקשר עם החבילה. (I5ba20)
גרסה 1.0.0-alpha01
27 ביולי 2022
הגרסאות androidx.tracing:tracing-perfetto:1.0.0-alpha01, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha01 וגם androidx.tracing:tracing-perfetto-common:1.0.0-alpha01 יוצאות. גרסה 1.0.0-alpha01 מכילה את השמירות האלה.
- הערה: כל הספריות של
androidx.tracing:tracing-perfetto*מיועדות בתחילה לשימוש פנימי בלבד בספריות AndroidX. לא אמור להיות צורך להסתמך עליהם באופן ישיר.
תכונות חדשות
כל הספריות של
androidx.tracing:tracing-perfetto*נועדו בתחילה לשימוש פנימי בלבד בספריות AndroidX, ולא אמור להיות לכם צורך להסתמך עליהן באופן ישיר. אנחנו מתעדים את פרטי ההטמעה האלה כדי לשמור על שקיפות.
androidx.tracing:tracing-perfettoהיא ספרייה שעוזרת לכתוב אירועי מעקב באמצעות Perfetto SDK עם תקורה נמוכה. אפשר להשתמש בנתונים האלה ב-Benchmark, ב-Android Studio או בממשק המשתמש של Perfetto.
androidx.tracing:tracing-perfetto-binaryהוא קבוצה של תלות בינארית שנדרשת בשביל androidx.tracing:tracing-perfetto.
androidx.tracing:tracing-perfetto-commonהיא תלות פנימית של androidx.tracing:tracing-perfetto, ואפשר להשתמש בה בכלי פיתוח כדי לבצע אינטגרציה עם androidx.tracing:tracing-perfetto.