Tracing
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 12. Oktober 2026 | 2.0.4 | - | - | - |
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf den Button mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Tracing
Version 2.0
Version 2.0.4
12. Oktober 2026
androidx.tracing:tracing-*:2.0.4 ist veröffentlicht. Version 2.0.4 enthält diese Commits.
Fehlerkorrekturen
- Eine Race-Bedingung beim Leeren von Trace-Paketen wurde behoben. (aosp/4344047)
Version 2.0.3
23. September 2026
androidx.tracing:tracing-*:2.0.3 ist veröffentlicht. Version 2.0.3 enthält diese Commits.
Version 2.0.2
9. September 2026
androidx.tracing:tracing-*:2.0.2 ist veröffentlicht. Version 2.0.2 enthält diese Commits.
Version 2.0.1
26. August 2026
androidx.tracing:tracing-*:2.0.1 ist veröffentlicht. Version 2.0.1 enthält diese Commits.
Version 2.0.0
12. August 2026
androidx.tracing:tracing-*:2.0.0 ist veröffentlicht. Version 2.0.0 enthält diese Commits.
Wichtige Funktionen von 2.0.0:
Die neue In-Process-API ermöglicht Folgendes:
- Trace-Inhalte prozessintern und im Feld aufzeichnen
- Perfetto-Abläufe (Pfeile von einem Slice zu einem anderen)
- Perfetto-Annotationen (Slice-Metadaten für Schlüssel/Wert-Paare)
traceCoroutine() {}– Coroutine Tracing API, die Thread-Wechsel verfolgt- Kategoriefilterung
- Deutlich geringerer Overhead als bei der vorhandenen
android.os.TraceAPI und demtrace() {}-Wrapper - KMP-Tracing: Kann für Bibliotheken ohne Android-Abhängigkeit und für Host-JVM-Projekte verwendet werden.
- Nach dem Zusammenführen mit der System-Trace-Aufzeichnung (standardmäßig in AndroidX Benchmark 1.5 implementiert)
Beachten Sie, dass die neuen Tracing-APIs in einen prozessgesteuerten Zwischenspeicher schreiben, der noch nicht von der Studio-System-Trace-Aufzeichnung erfasst wird. Dieses Problem wird in einer zukünftigen Version der Studio-Profiler behoben.
Die vorhandenen android.os.Trace- und trace() {}-APIs wurden nicht eingestellt. Diese APIs werden weiterhin für Ereignisse mit geringer Häufigkeit empfohlen, die immer im System-Trace-Zwischenspeicher aufgezeichnet werden sollten, insbesondere in Bibliotheken.
Version 2.0.0-rc01
29. Juli 2026
androidx.tracing:tracing-*:2.0.0-rc01 ist veröffentlicht. Version 2.0.0-rc01 enthält diese Commits.
Version 2.0.0-beta01
15. Juli 2026
androidx.tracing:tracing-*:2.0.0-beta01 ist veröffentlicht. Version 2.0.0-beta01 enthält diese Commits.
API-Änderungen
PerfettoCaptureundPerfettoTraceRulekönnen jetzt In-Process-Traces erfassen und für ein Zielpaket zusammenführen. (I9a00b, b/497959820)androidx.benchmarkhat jetzt einenminSdkvon 24. (Ic2a85)
Diverse Fehlerkorrekturen
- Tracing 2.0-beta01 veröffentlicht. (I1b162)
- Verwenden Sie beim Generieren von Track-Informationen plattformspezifische Thread-IDs. (I6ba64)
Version 2.0.0-alpha09
23. Juni 2026
androidx.tracing:tracing-*:2.0.0-alpha09 ist veröffentlicht. Version 2.0.0-alpha09 enthält diese Commits.
API-Änderungen
- Kleinere API-Änderung in
Tracer, um zwischeninstant(...)undwriteInstant(...)zu unterscheiden. (I0935a) - Unterstützung für Propagierungstokens in Sofortereignissen hinzugefügt. (I99f81)
- Vollständige Nutzung von Perfetto-Abläufen in der experimentellen API für die manuelle Kontextweitergabe zulassen. (I20cb6)
- Erstellung von
BufferedSinkundProtoWriterinTraceSinkverschieben. (Ibd098) - Die
Tracer-Erkennung soll sowohl für Java- als auch für Android-Bibliotheken einfach und flexibel sein. (I99111) - Bibliotheksentwicklern die Möglichkeit geben, eine Instanz von
TraceDriverzu finden, die für das prozessinterne Tracing verwendet werden kann. (Ia503e)
Version 2.0.0-alpha08
19. Mai 2026
androidx.tracing:tracing-*:2.0.0-alpha08 ist veröffentlicht. Version 2.0.0-alpha08 enthält diese Commits.
API-Änderungen
- Es wurde die Möglichkeit hinzugefügt, Instanzen von
TraceDriverzu erkennen und zu überschreiben, die prozessweit verwendet werden sollen. (I3f715) - Benennen Sie
Tracer.recordExceptioninTracer.recordExceptionAndThrowum. (I4411f, b/503092450)
Version 2.0.0-alpha07
6. Mai 2026
androidx.tracing:tracing-*:2.0.0-alpha07 ist veröffentlicht. Version 2.0.0-alpha07 enthält diese Commits.
API-Änderungen
- Fügen Sie eine API hinzu, um einen Stub-Tracer zu erhalten, der verwendet werden kann, wenn das Tracing deaktiviert ist. (I84c98)
- Lebenszyklus des Tracings mit dem System-Tracing konsistent machen. (Ib391b)
- Zähler-APIs sind jetzt vollständig zuweisungsfrei. (I5e73a)
Fehlerkorrekturen
- Eine Keep-Regel für das Perfetto SDK (
tracing-perfetto) wurde korrigiert, damit das Perfetto SDK aktiviert werden kann. (I1d227) - Die Möglichkeit,
flush()-Ereignisse zu verfolgen, wurde hinzugefügt. (I38014, b/495852704)
Version 2.0.0-alpha06
22. April 2026
androidx.tracing:tracing-*:2.0.0-alpha06 ist veröffentlicht. Version 2.0.0-alpha06 enthält diese Commits.
API-Änderungen
- Entfernen Sie die Einschränkung für
File.createPerfettoFile(), damit andere Nutzer Sinks sicher erstellen können. Wenn einblock()eine Ausnahme intrace/traceCoroutineauslöst, erstellen Sie eininstant-Ereignis für die Ausnahme mit den Metadaten, die die entsprechenden Stacktrace-Elemente darstellen. (I682e5, b/501536851, b/437166283) - Fügen Sie eine
setCounter(...)-Überladung hinzu, die einen Java-Long-Typ akzeptiert. (Ic0469, b/356082604) - In Tracing 2.0 wird jetzt
Longfür plattformspezifischeThread-Kennungen verwendet. (I67277)
Diverse Fehlerkorrekturen
- Verbessere die Dokumentation für
AttributeEntry.reset(). (I5d3a1, b/496079439)
Version 2.0.0-alpha05
8. April 2026
androidx.tracing:tracing-*:2.0.0-alpha05 ist veröffentlicht. Version 2.0.0-alpha05 enthält diese Commits.
API-Änderungen
TraceSink-Factory-Funktionen geben jetztTraceSinkund nichtAbstractTraceSinkzurück. Dateien haben jetzt ein eindeutiges Suffix. Wir sorgen dafür, dass wir atomar eine neue Datei erstellen können, in der Trace-Pakete gespeichert werden. (I4c4aa, b/496298726)- Vereinfachen und beschleunigen Sie die Weitergabe des Coroutine-Kontexts. (Ia62db)
- Einführung des optionalen
attributes()beim Erstellen einesTraceDriver, mit dem Metadaten zu einem Trace hinzugefügt werden können. (Ia147e)
Diverse Fehlerkorrekturen
- Prozess-Threads und Counter-Tracks werden jetzt synchronisiert. Dadurch werden Ausnahmen des folgenden Formats behoben:
java.lang.NullPointerException: Cannot invoke "androidx.tracing.ThreadTrack.flush$tracing()" because "threadTrack" is null - Vermeiden Sie das Ausgeben von Senkenereignissen, wenn das Tracing deaktiviert ist.
Version 2.0.0-alpha04
25. März 2026
androidx.tracing:tracing-*:2.0.0-alpha04 ist veröffentlicht. Version 2.0.0-alpha04 enthält diese Commits.
API-Änderungen
- Machen Sie
AbstractTraceDriverwirklich abstrakt und verschieben Sie diePerfetto-Implementierung in dastracing-wire-Modul. (Ie2f59) - Geben Sie den Basisimplementierungen aussagekräftigere Namen, um die Verwendung der falschen Implementierung zu vermeiden. Entwickler, die bisher
androidx.tracing.Trace{Sink|Driver}erweitert haben, müssen jetzt zuAbstractTrace{Sink|Driver}wechseln. (I9b46d)
Version 2.0.0-alpha03
11. März 2026
androidx.tracing:tracing-*:2.0.0-alpha03 ist veröffentlicht. Version 2.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Es wurde eine experimentelle
InMemoryRingBufferTraceSink-Implementierung hinzugefügt, mit der eine Kapazitätsbeschränkung festgelegt werden kann und die das Schreiben auf die Festplatte verhindert, sofern dies nicht explizit angefordert wird. (I1dc44, b/484409653, I65a37, b/484409653) - Behebung einer Race-Bedingung beim Ausgeben von Trace-Ereignissen für das Anhalten und Fortsetzen von Coroutinen. (Ie145e)
Fehlerkorrekturen
androidx.tracingversucht standardmäßig nicht mehr, in Traces Verbindungen von übergeordneten zu untergeordneten Koroutinen herzustellen. Das war verwirrend, da das zugrunde liegende Trace-Format keine1:N- undN:1-Verbindungen unterstützt. Das Ergebnis war ein Durcheinander von Pfeilen, da nicht klar war, welche Coroutine-Aufteilung mit welcher verbunden ist. Sie können die Weitergabe mit dertokenForManualPropagation()API weiterhin manuell aktivieren, wenn dies für Ihren Anwendungsfall wichtig ist. (Ib2cf9)
Version 2.0.0-alpha02
25. Februar 2026
androidx.tracing:tracing-*:2.0.0-alpha02 ist veröffentlicht. Version 2.0.0-alpha02 enthält diese Commits.
Neue Funktionen
- Verbesserte Leistung für die Perfetto Trace Sink-Implementierung durch Verwendung des
suspendCoroutineUninterceptedOrReturn-Intrinsics (2ea97b).
Version 2.0.0-alpha01
28. Januar 2026
androidx.tracing:tracing-*:2.0.0-alpha01 ist veröffentlicht. Version 2.0.0-alpha01 enthält diese Commits.
Neue Funktionen
AndroidX Tracing 2.0 bietet eine neue API-Oberfläche für prozessinternes Tracing mit geringem Overhead, die die vorhandenen android.os.Tracing-basierten APIs in Tracing 1.0 ergänzt. Die neuen APIs sind sowohl auf Android als auch auf der Host-JVM verfügbar. Dadurch können Host-Tools Traces mit geringem Overhead für die Leistungsanalyse im selben Standard-Perfetto-Trace-Format ausgeben.
Ausgegebene Traces werden sowohl von Android Studio als auch von Perfetto unterstützt und können mit einem erweiterten Feature-Set aufgezeichnet werden, einschließlich des Tagging von Slices mit Metadaten (z. B. Funktionsargumenten) und der Weitergabe von Trace-Kontexten für Koroutinen.
Diese erste Alphaversion ist nur für prozessinterne Tracing-Workflows gedacht und noch nicht in das Tracing des Android-Betriebssystems oder das System-Tracing des Studio Profilers eingebunden. Diese Funktionen werden in einer zukünftigen Alphaversion verfügbar sein.
/**
* 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-Änderungen
- Machen Sie
Tracerzu einem Attribut vonTraceDriver. (Iabd9b) - Unterstützung für die manuelle Weitergabe von Kontext hinzugefügt. (I899ff)
- Möglichkeit hinzugefügt, Informationen zum Aufrufstapel in einem Trace-Abschnitt hinzuzufügen. (If6a1b)
- Einführung der neuen
androidx.tracingAPIs. (I5102b) - Sofortige Ereignisse können Metadaten enthalten. Außerdem können Sie Zähler zu Sofort- und Zählerereignissen hinzufügen. (Ia2ed3)
- Reduzieren Sie die Oberfläche der mit
@DelicateTracingApiannotierten API. Für nichts in der API auf oberster Ebene sollte die Verwendung von@DelicateTracingApierforderlich sein. (I565e0) - Vereinfachen Sie die Weitergabe von Kontext durch die Vereinheitlichung von
PropagationToken. (Iab839) BlackHole-APIs inandroidx.benchmarkstabilisieren. (I2b67e, b/451749438)- Es wurde die Möglichkeit hinzugefügt, den Trace-Abschnitt als Stamm-Spanne zu kennzeichnen. (Ic8365)
- Ermöglichen Sie dem Entwickler, Propagierungstokens explizit anzugeben. (I06bb1)
MetadataHandleCloseablewurde inEventMetadataCloseableundMetadataHandleinEventMetadataumbenannt. Außerdem wurdeTracer.traceCoroutinedas optionale ArgumentCoroutinePropagationTokenhinzugefügt, damit Entwickler das zu verwendende Weiterleitungstoken explizit angeben können. (I219f7, b/454147392)- Es wurde ein neuer
Tracer-Einstiegspunkt eingeführt, mit dem Entwickler viel mehr Kontrolle über das Tracing haben. (I24a7b) - Möglichkeit hinzugefügt, die Kontextweitergabe in einem
SliceTrackzu steuern. (Ieb8fc) fillCountinPooledTracePacketArrayist jetzt korrekt als flüchtig gekennzeichnet. (I75d2c)- Markieren Sie
MetadataEntry@DelicateTracingApi. (I8c723) - Fügen Sie die Möglichkeit hinzu, dass ein
TraceSinkverlorene Trace-Ereignisse verarbeiten kann (wenn der Pool erschöpft ist). (I3b374) - Es wurde die Möglichkeit hinzugefügt, Trace-Ereignisse basierend auf einem Prädikat bedingt auszugeben. (I621b4)
- Fügen Sie die Möglichkeit hinzu, einem Trace-Ereignis Kategorien hinzuzufügen. (I449c2)
- Markieren Sie
TraceEventundPooledTracePacketArrayalsDelicateTracingApi. (Iaac6d) ProcessTrack.id,ThreadTrack.id,ThreadTrack.name,CounterTrack.nameundCounterTrack.parentöffentlich machen. (I81210)- Die
SliceTrack.traceFlow()API wurde intraceCoroutine()umbenannt. (I79ad0) - Möglichkeit hinzugefügt, Slices über Debug-Anmerkungen in einem Perfetto-Trace Kontextinformationen hinzuzufügen. (Ic2b56)
- Es muss möglich sein, eine Instanz von
WireTraceSinkmit einemFile/OutputStreamzu erstellen. (Iecea0) - Veraltete
@RequiresApi(21)-Annotationen werden entfernt (Ic4792)
Version 1.3
Version 1.3.0
23. April 2025
androidx.tracing:tracing:1.3.0, androidx.tracing:tracing-android:1.3.0 und androidx.tracing:tracing-ktx:1.3.0 sind veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Die Klasse
androidx.tracing.Tracewurde in Kotlin konvertiert und der gesamte Code aus dem Modultracing-ktxwurde intracingverschoben. - Entfernen Sie „crossinline“ aus „trace“, damit es in einem
@Composableverwendet werden kann. (I53882, b/248344805)
Version 1.3.0-rc01
09. April 2025
androidx.tracing:tracing:1.3.0-rc01, androidx.tracing:tracing-android:1.3.0-rc01 und androidx.tracing:tracing-ktx:1.3.0-rc01 werden ohne Änderungen seit der letzten Betaversion veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Version 1.3.0-beta01
12. Februar 2025
androidx.tracing:tracing:1.3.0-beta01, androidx.tracing:tracing-android:1.3.0-beta01 und androidx.tracing:tracing-ktx:1.3.0-beta01 sind veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
API-Änderungen
- Der gesamte Code wurde aus dem
tracing-ktx-Modul intracingverschoben. (Iba550) - Die Klasse
androidx.tracing.Tracewurde in Kotlin konvertiert. (Ie4e5d)
Fehlerkorrekturen
- Die manuelle Beschreibung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies automatisch über die API-Modellierung erfolgt, wenn R8 mit AGP 7.3 oder höher verwendet wird (z. B. R8-Version 3.3), und für alle Builds, wenn AGP 8.1 oder höher verwendet wird (z. B. D8-Version 8.1). Clients, die AGP nicht verwenden, wird empfohlen, auf D8-Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (Ia60e0, b/345472586)
Version 1.3.0-alpha02
21. Juni 2023
androidx.tracing:tracing:1.3.0-alpha02 und androidx.tracing:tracing-ktx:1.3.0-alpha02 werden ohne Änderungen gegenüber der vorherigen Alphaversion veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
Version 1.3.0-alpha01
7. Juni 2023
androidx.tracing:tracing:1.3.0-alpha01 und androidx.tracing:tracing-ktx:1.3.0-alpha01 sind veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
API-Änderungen
- Entfernen Sie „crossinline“ aus „trace“, damit es in einem
@Composableverwendet werden kann. (I53882, b/248344805)
Version 1.2
Version 1.2.0
29. November 2023
androidx.tracing:tracing:1.2.0 und androidx.tracing:tracing-ktx:1.2.0 sind veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit 1.1.0
- Fügen Sie die Varianten
trace()undtraceAsync()mit Lazy String und Cookie Computation hinzu. Außerdem wirdTrace.endjetzt korrekt übersprungen, wennTrace.begineinen Fehler auslöst.
Version 1.2.0-rc01
24. Mai 2023
androidx.tracing:tracing:1.2.0-rc01 und androidx.tracing:tracing-ktx:1.2.0-rc01 sind veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Diverse Fehlerkorrekturen
- Abstürze werden verhindert, wenn lange Namen für Trace-Abschnitte übergeben werden, indem sie automatisch gekürzt werden (Iaf6e2).
Version 1.2.0-beta04
3. Mai 2023
androidx.tracing:tracing:1.2.0-beta04 und androidx.tracing:tracing-ktx:1.2.0-beta04 werden ohne Änderungen veröffentlicht. Version 1.2.0-beta04 enthält diese Commits.
Version 1.2.0-beta03
5. April 2023
androidx.tracing:tracing:1.2.0-beta03 und androidx.tracing:tracing-ktx:1.2.0-beta03 werden ohne neue Änderungen veröffentlicht. Version 1.2.0-beta03 enthält diese Commits.
Version 1.2.0-beta02
22. März 2023
androidx.tracing:tracing:1.2.0-beta02 und androidx.tracing:tracing-ktx:1.2.0-beta02 werden ohne Änderungen gegenüber der vorherigen Betaversion veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Version 1.2.0-beta01
8. März 2023
androidx.tracing:tracing:1.2.0-beta01 und androidx.tracing:tracing-ktx:1.2.0-beta01 werden ohne Änderungen seit der letzten Alphaversion veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Version 1.2.0-alpha02
23. Februar 2023
androidx.tracing:tracing:1.2.0-alpha02 und androidx.tracing:tracing-ktx:1.2.0-alpha02 werden ohne Änderungen gegenüber der vorherigen Alphaversion veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Diverse Fehlerkorrekturen
- Mit diesem Release wird ein
Could not find androidx.tracing:tracing-ktx:1.2.0-alpha02-Fehler beim Upgrade aufandroidx.tracing: tracing-perfetto-common:1.0.0-alpha11behoben.
Version 1.2.0-alpha01
5. Oktober 2022
androidx.tracing:tracing:1.2.0-alpha01 und androidx.tracing:tracing-ktx:1.2.0-alpha01 sind veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Fügen Sie die Varianten
trace()undtraceAsync()mit Lazy-String- und Cookie-Berechnung hinzu. Außerdem wirdTrace.endjetzt korrekt übersprungen, wennTrace.begineinen Fehler auslöst. (I31421, b/175233952, b/247066503)
Version 1.1
Version 1.1.0
11. Mai 2022
androidx.tracing:tracing:1.1.0 und androidx.tracing:tracing-ktx:1.1.0 sind veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- In
Trace.forceEnableAppTracing()wurde eine API hinzugefügt, mit der die Erfassung von App-Trace-Abschnitten (z.B. android.os.Trace / androidx.tracing APIs) in nicht debugfähigen Builds zwingend aktiviert werden kann. Rufe diese Methode zu Beginn des Startvorgangs auf, um vor der Einführung des profilierbaren Manifest-Tags in API 29 ein genaues System-Tracing ohne Debugging zu ermöglichen. (I3a309) - Klassenüberprüfungsfehler beim ersten Laden von Trace.java vermeiden (05f6b4 und cb101f)
Version 1.1.0-rc01
20. April 2022
androidx.tracing:tracing:1.1.0-rc01 und androidx.tracing:tracing-ktx:1.1.0-rc01 wurden veröffentlicht. Es gab keine Änderungen seit beta01. Version 1.1.0-rc01 enthält diese Commits.
Version 1.1.0-beta01
1. Dezember 2021
androidx.tracing:tracing:1.1.0-beta01 und androidx.tracing:tracing-ktx:1.1.0-beta01 sind veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Keine Änderungen seit dem 1.1.0-alpha02.
Version 1.1.0-alpha02
17. November 2021
androidx.tracing:tracing:1.1.0-alpha02 und androidx.tracing:tracing-ktx:1.1.0-alpha02 sind veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
- Trace.forceEnableAppTracing() wurde hinzugefügt, eine API, mit der die Erfassung von App-Trace-Abschnitten (d.h. android.os.Trace / andoridx.tracing APIs) in nicht debugfähigen Builds zwingend aktiviert werden kann. Rufen Sie diese Methode zu Beginn des Starts auf, um ein nicht debuggbares, genaues System-Tracing zu aktivieren, bevor das profilierbare Manifest-Tag in API 29 eingeführt wird. (I3a309)
Version 1.1.0-alpha01
3. November 2021
androidx.tracing:tracing:1.1.0-alpha01 und androidx.tracing:tracing-ktx:1.1.0-alpha01 sind veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
Version 1.0
Version 1.0.0
28. Oktober 2020
androidx.tracing:tracing:1.0.0 und androidx.tracing:tracing-ktx:1.0.0 sind veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von 1.0.0
Hilft beim Schreiben von Trace-Ereignissen in den System-Trace-Zwischenspeicher. Dies kann mit Tools wie Systrace und Perfetto visualisiert werden. Diese Bibliothek ersetzt die verworfene Klasse androidx.core.os.TraceCompat.
Version 1.0.0-rc01
14. Oktober 2020
androidx.tracing:tracing:1.0.0-rc01 und androidx.tracing:tracing-ktx:1.0.0-rc01 sind veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Dieser Release ist mit 1.0.0-beta01 identisch.
Version 1.0.0-beta01
24. Juni 2020
androidx.tracing:tracing:1.0.0-beta01 und androidx.tracing:tracing-ktx:1.0.0-beta01 werden ohne Änderungen seit 1.0.0-alpha01 veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Version 1.0.0-alpha01
10. Juni 2020
androidx.tracing:tracing:1.0.0-alpha01 und androidx.tracing:tracing-ktx:1.0.0-alpha01 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
androidx.tracing ist eine Bibliothek, mit der sich Trace-Ereignisse in den System-Trace-Puffer schreiben lassen. Dies kann mit Tools wie Systrace und Perfetto visualisiert werden. Diese Bibliothek ersetzt die verworfene Klasse androidx.core.os.TraceCompat. Die erste Version ist 1.0.0-alpha01.
Tracing mit Perfetto
Version 1.0
Version 1.0.1
19. November 2025
androidx.tracing:tracing-perfetto:1.0.1, androidx.tracing:tracing-perfetto-binary:1.0.1 und androidx.tracing:tracing-perfetto-handshake:1.0.1 sind veröffentlicht. Version 1.0.1 enthält diese Commits.
Diverse Fehlerkorrekturen
- Unterstützung für Seitengrößen von 16 KB (b7a7dd)
- Die manuelle Beschreibung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies automatisch über die API-Modellierung erfolgt, wenn R8 mit AGP 7.3 oder höher verwendet wird (z. B. R8-Version 3.3), und für alle Builds, wenn AGP 8.1 oder höher verwendet wird (z. B. D8-Version 8.1). Clients, die AGP nicht verwenden, wird empfohlen, auf D8-Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (Ia60e0, b/345472586)
- Vermeiden Sie es, Kopien von
FastNative/CriticalNativein der Bibliothek zu bündeln, und verwenden Sie die stabilen Plattformkopien. (I8238a, b/35664282, b/280878596)
Version 1.0.0
4. Oktober 2023
androidx.tracing:tracing-perfetto:1.0.0, androidx.tracing:tracing-perfetto-binary:1.0.0 und androidx.tracing:tracing-perfetto-handshake:1.0.0 sind veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von Version 1.0.0
- Dies ist die erste stabile Version der Tracing-perfetto-Bibliotheken.
Version 1.0.0-rc01
20. September 2023
androidx.tracing:tracing-perfetto:1.0.0-rc01, androidx.tracing:tracing-perfetto-binary:1.0.0-rc01 und androidx.tracing:tracing-perfetto-handshake:1.0.0-rc01 wurden ohne Änderungen seit der letzten Betaversion veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Version 1.0.0-beta03
30. August 2023
androidx.tracing:tracing-perfetto:1.0.0-beta03, androidx.tracing:tracing-perfetto-binary:1.0.0-beta03 und androidx.tracing:tracing-perfetto-handshake:1.0.0-beta03 sind veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
- Versionsanpassung an androidx.benchmark-Release.
Version 1.0.0-beta02
23. August 2023
androidx.tracing:tracing-perfetto:1.0.0-beta02, androidx.tracing:tracing-perfetto-binary:1.0.0-beta02 und androidx.tracing:tracing-perfetto-handshake:1.0.0-beta02 sind veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
- Unterstützung für Tracing beim App-Start (Kaltstart) aktiviert.
Version 1.0.0-beta01
18. Juli 2023
androidx.tracing:tracing-perfetto:1.0.0-beta01, androidx.tracing:tracing-perfetto-binary:1.0.0-beta01 und androidx.tracing:tracing-perfetto-handshake:1.0.0-beta01 sind veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
API-Änderungen
androidx.tracing.perfetto.Tracewurde inandroidx.tracing.perfetto.PerfettoSdkTraceumbenannt (I44af8)- Die Konstanten „exit code“ wurden im Protokoll aus Konsistenzgründen in „result code“ umbenannt (Id1d1e).
EnableTracingResponsewurde inResponseumbenannt. (I56275)- Es wurde eine Option zum Aktivieren des Kaltstart-Tracings in einem persistenten Modus hinzugefügt. Es wurde eine Funktion zum Löschen von (persistentem oder nicht persistentem) Kaltstart-Tracing hinzugefügt. (Iaa09d)
- Die Tracing Perfetto SDK APIs wurden mit
android.os.Tracekonsistent gemacht. (I73ba0, b/282199917) - Für
LibrarySourcewurde ein Factory-Muster eingeführt, damit bei Bedarf problemlos zukünftige Anwendungsfälle (z.B. das direkte Laden der.so-Datei) in die API aufgenommen werden können. (I128df) enableTracingColdStart-Parameter werden anenableTracingImmediateangepasst (I54126)- Argument „
killProcess“ inenableTracingColdStartentfernt (I81c4d)
Version 1.0.0-alpha17
21. Juni 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha17, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha17 und androidx.tracing:tracing-perfetto-handshake:1.0.0-alpha17 wurden ohne Änderungen gegenüber der vorherigen Alphaversion veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.
Version 1.0.0-alpha16
7. Juni 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha16, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha16 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha16 werden ohne Änderungen gegenüber der vorherigen Alphaversion veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.
Version 1.0.0-alpha15
3. Mai 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha15, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha15 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha15 werden ohne Änderungen veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.
Version 1.0.0-alpha14
5. April 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha14, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha14 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha14 werden ohne neue Änderungen veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.
Version 1.0.0-alpha13
22. März 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha13, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha13 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha13 werden ohne Änderungen seit der letzten Version veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.
Version 1.0.0-alpha12
8. März 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha12, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha12 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha12 wurden ohne Änderungen seit der vorherigen Alphaversion veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
Version 1.0.0-alpha11
22. Februar 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha11, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha11 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha11 werden ohne Änderungen veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
Version 1.0.0-alpha10
8. Februar 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha10, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha10 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha10 werden ohne Änderungen veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Version 1.0.0-alpha09
10. Februar 2023
androidx.tracing:tracing-perfetto-binary:1.0.0-alpha09 ist veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Version bump release to allow other
androidx.tracing:tracing-perfetto*: 1.0.0-alpha09libraries to work together.
11. Januar 2023
androidx.tracing:tracing-perfetto:1.0.0-alpha09 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha09 werden ohne Änderungen veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Version 1.0.0-alpha08
7. Dezember 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha08, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha08 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha08 sind veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Die Leistung wurde durch die Optimierung der Verarbeitung von Strings verbessert.
Fehlerkorrekturen
- Es wurde eine ProGuard-Regel hinzugefügt, die verhindert, dass Methoden von
PerfettoNativeentfernt werden, wenn die Klasse überhaupt verwendet wird. Dadurch wird ein Absturz in einem seltenen Fall verhindert, wenn das Tracing initialisiert wird, aber keine Tracing-Aufrufe in der App vorhanden sind.
Version 1.0.0-alpha07
9. November 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha07, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha07 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha07 sind veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
- Der JNI-Aufwand der
androidx.tracing:tracing-perfetto-APIs wurde reduziert.
Version 1.0.0-alpha06
24. Oktober 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha06, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha06 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha06 sind veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
- Dieses Update enthält keine Änderungen. Es wird nur die Versionsnummer aktualisiert, um sie mit androidx.benchmark zu synchronisieren.
Version 1.0.0-alpha05
5. Oktober 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha05, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha05 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha05 sind veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
Version 1.0.0-alpha04
21. September 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha04, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha04 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha04 sind veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Version 1.0.0-alpha03
7. September 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha03, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha03 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha03 sind veröffentlicht.
Neue Funktionen
- Keine neuen Funktionen seit Version 1.0.0-alpha02.
Version 1.0.0-alpha02
24. August 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha02, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha02 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha02 sind veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Diverse Fehlerkorrekturen
- Mehrere Verbesserungen bei der Initialisierung des Perfetto-Dienstes
- Die Verarbeitung von Fällen ohne Antwort wurde verbessert, indem ein dedizierter Exit-Code eingeführt wurde: RESULT_CODE_CANCELLED.
- Die Verarbeitung von Parsing-Fehlern wurde verbessert.
EnableTracingResponse.requiredVersionwurde auf „nullable“ gesetzt, da die Version nicht bekannt sein kann, wenn keine Kommunikation mit dem Paket möglich ist. (I5ba20)
Version 1.0.0-alpha01
27. Juli 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha01, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha01 und androidx.tracing:tracing-perfetto-common:1.0.0-alpha01 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
- Hinweis: Alle
androidx.tracing:tracing-perfetto*-Bibliotheken sind anfangs nur für die interne Verwendung in AndroidX-Bibliotheken vorgesehen. Sie sollten nicht direkt von ihnen abhängig sein.
Neue Funktionen
Alle
androidx.tracing:tracing-perfetto*-Bibliotheken sind anfänglich nur für die interne Verwendung in AndroidX-Bibliotheken vorgesehen und Sie sollten nicht direkt von ihnen abhängig sein müssen. Wir dokumentieren diese Implementierungsdetails aus Gründen der Transparenz.androidx.tracing:tracing-perfettoist eine Bibliothek, mit der Trace-Ereignisse mit dem Perfetto SDK mit geringem Aufwand geschrieben werden können. Diese können in Benchmark, Android Studio oder der Perfetto-Benutzeroberfläche verwendet werden.androidx.tracing:tracing-perfetto-binaryist eine Reihe von binären Abhängigkeiten, die für androidx.tracing:tracing-perfetto erforderlich sind.androidx.tracing:tracing-perfetto-commonist eine interne Abhängigkeit von androidx.tracing:tracing-perfetto und kann von Tools verwendet werden, um in androidx.tracing:tracing-perfetto integriert zu werden.