מבצע מעקב

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

משוב

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

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

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

מבצע מעקב

גרסה 2.0

גרסה 2.0.3

‫23 בספטמבר 2026

‫androidx.tracing:tracing-*:2.0.3 מופץ. גרסה 2.0.3 מכילה את השמירות האלה.

גרסה 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 (ממשק 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

  • עכשיו אפשר ללכוד את העקבות של תהליכים שמתבצעים ולמזג אותם לחבילת יעד.PerfettoCapturePerfettoTraceRule (I9a00b, ‏ b/497959820)
  • מעכשיו יש ל-androidx.benchmark מינוי ל-minSdk עם מכסת אחסון של 24GB. (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(...) שמקבל סוג Java‏ Long. ‫(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 באמצעות suspendCoroutineUninterceptedOrReturn intrinsic ‏ (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 מכילה את השמירות האלה.

תיקוני באגים

  • נמנעות שגיאות באימות מחלקה כש-Trace.java נטען בפעם הראשונה (05f6b4 ו-cb101f)

גירסה 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)
  • התאמה של פרמטרים enableTracingColdStart enableTracingImmediate (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.