التتبع
| آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأوّلي |
|---|---|---|---|---|
| 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:
تتيح واجهة برمجة التطبيقات الجديدة داخل العملية ما يلي:
- تسجيل محتوى التتبُّع أثناء المعالجة وفي الموقع
- عمليات Perfetto (الأسهم من شريحة إلى أخرى)
- تعليقات توضيحية في Perfetto (البيانات الوصفية لشرائح المفتاح/القيمة)
traceCoroutine() {}: واجهة برمجة تطبيقات لتتبُّع الروتينات الفرعية التي تتتبّع عمليات تبديل سلاسل المحادثات- تصفية الفئات
- تكلفة أقل بكثير من واجهة برمجة التطبيقات
android.os.Traceالحالية وبرنامج تضمينtrace() {} - تتبُّع KMP: يمكن استخدامه في المكتبات التي لا تعتمد على Android وفي مشاريع JVM المضيفة
- بعد الدمج مع تسجيل "تتبُّع النظام" (يتم تنفيذه تلقائيًا في الإصدار 1.5 من AndroidX Benchmark)
يُرجى العِلم أنّ واجهات برمجة التطبيقات الجديدة لتتبُّع الأخطاء تسجّل في مخزن مؤقت يتم التحكّم فيه من خلال العملية، ولم يتم تسجيله بعد من خلال ميزة "تسجيل تتبُّع النظام" في "استوديو Android". سيتم حلّ هذه المشكلة في "أدوات تحليل الأداء في استوديو Android" في إصدار قادم.
لم يتم إيقاف واجهات برمجة التطبيقات الحالية android.os.Trace / trace() {} نهائيًا. لا يزال يُنصح باستخدام واجهات برمجة التطبيقات هذه للأحداث المنخفضة التكرار التي يجب تسجيلها دائمًا في مخزن مؤقت لتتبُّع النظام، خاصةً في المكتبات.
الإصدار 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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- يمكن لـ "
PerfettoCapture" و"PerfettoTraceRule" الآن تسجيل عمليات التتبُّع الجارية ودمجها في حزمة مستهدَفة. (I9a00b، b/497959820) - لدى "
androidx.benchmark" الآنminSdkيبلغ 24. (Ic2a85)
إصلاح الأخطاء
- الإصدار 2.0-beta01 من Tracing (I1b162)
- استخدِم معرّفات سلاسل محادثات خاصة بالنظام الأساسي عند إنشاء معلومات المقطع الصوتي. (I6ba64)
الإصدار 2.0.0-alpha09
23 يونيو 2026
تم طرح androidx.tracing:tracing-*:2.0.0-alpha09. يتضمّن الإصدار 2.0.0-alpha09 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- تغيير بسيط في واجهة برمجة التطبيقات في
Tracerللتمييز بينinstant(...)وwriteInstant(...)(I0935a) - إضافة إمكانية استخدام رموز التتبّع في الأحداث الفورية (I99f81)
- السماح بالاستخدام الكامل لعمليات Perfetto في واجهة برمجة التطبيقات التجريبية لنقل السياق يدويًا (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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- أضِف إمكانية اكتشاف مثيلات
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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- أضِف واجهة برمجة تطبيقات للحصول على أداة تتبُّع وهمية يمكن استخدامها عند إيقاف التتبُّع. (I84c98)
- يجب أن يكون تتبُّع دورة الحياة متوافقًا مع تتبُّع النظام. (Ib391b)
- أصبحت واجهات برمجة التطبيقات الخاصة بالعدادات الآن لا تتطلّب أي تخصيص. (I5e73a)
إصلاح الأخطاء
- تم إصلاح قاعدة الاحتفاظ بحزمة تطوير البرامج (SDK) الخاصة بأداة Perfetto (
tracing-perfetto) التي تضمن إمكانية تفعيل حزمة تطوير البرامج (SDK) الخاصة بأداة Perfetto. (I1d227) - إضافة إمكانية تتبُّع أحداث
flush()(I38014، b/495852704)
الإصدار 2.0.0-alpha06
22 أبريل 2026
تم طرح androidx.tracing:tracing-*:2.0.0-alpha06. يتضمّن الإصدار 2.0.0-alpha06 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- يمكنك إزالة القيود عن
File.createPerfettoFile()ليتمكّن المستخدمون الآخرون من إنشاء مصادر بيانات بأمان. عندما يعرضblock()استثناءً فيtrace/traceCoroutine، أنشئ حدثinstantللاستثناء مع البيانات الوصفية التي تمثّل عناصر تتبُّع تسلسل استدعاء الدوال البرمجية المقابلة. (I682e5، b/501536851، b/437166283) - أضِف حمولة زائدة
setCounter(...)تأخذ نوعLongJava. (Ic0469، b/356082604) - تستخدم ميزة "التتبُّع 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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- تعرض دوال المصنع
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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- اجعل
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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- تمت إضافة تنفيذ تجريبي لـ
InMemoryRingBufferTraceSinkيتيح ضبط قيود السعة وتجنُّب الكتابة على القرص إلا إذا تم طلب ذلك صراحةً. (I1dc44، b/484409653، I65a37، b/484409653) - إصلاح حالة التنافس عند إصدار أحداث التتبُّع لعمليات تعليق واستئناف الروتين الفرعي (Ie145e)
إصلاح الأخطاء
- لم يعُد
androidx.tracingيحاول إنشاء اتصالات من إجراءات فرعية رئيسية إلى إجراءات فرعية تابعة في عمليات التتبُّع تلقائيًا. وقد أدى ذلك إلى حدوث لبس، لأنّ تنسيق التتبُّع الأساسي لا يتيح عمليات الربط1:NوN:1، ما يؤدي إلى ظهور مجموعة من الأسهم بسبب الغموض بشأن شريحة الروتين الفرعي التي ترتبط بأي عنصر. سيظل بإمكانك الموافقة يدويًا على عملية النقل باستخدام واجهة برمجة التطبيقاتtokenForManualPropagation()عندما يكون ذلك مهمًا لحالة الاستخدام. (Ib2cf9)
الإصدار 2.0.0-alpha02
25 فبراير 2026
تم طرح androidx.tracing:tracing-*:2.0.0-alpha02. يتضمّن الإصدار 2.0.0-alpha02 هذه التعديلات.
الميزات الجديدة
- تحسين أداء تنفيذ Perfetto Trace Sink من خلال استخدام الدالة الأصلية
suspendCoroutineUninterceptedOrReturn(2ea97b).
الإصدار 2.0.0-alpha01
28 يناير 2026
تم طرح androidx.tracing:tracing-*:2.0.0-alpha01. يتضمّن الإصدار 2.0.0-alpha01 هذه التعديلات.
الميزات الجديدة
توفّر مكتبة AndroidX Tracing 2.0 واجهة برمجة تطبيقات جديدة ومهمة لتتبُّع الأداء داخل العملية بدون تكلفة إضافية، وذلك بالإضافة إلى واجهات برمجة التطبيقات الحالية المستندة إلى android.os.Tracing في مكتبة Tracing 1.0. تتوفّر واجهات برمجة التطبيقات الجديدة على كلّ من Android وJVM المضيف، ما يتيح لأدوات المضيف إرسال عمليات تتبُّع ذات حمل منخفض لتحليل الأداء، وذلك باستخدام تنسيق تتبُّع Perfetto العادي نفسه.
يتوافق كلّ من "استوديو Android" وPerfetto مع عمليات التتبُّع التي يتم إرسالها، ويمكن تسجيلها باستخدام مجموعة الخصائص الموسّعة التي تتضمّن وضع علامات على الشرائح باستخدام البيانات الوصفية (مثل وسيطات الدوال!)، وتتبُّع سياق الكوروتينات.
تم تصميم إصدار Alpha الأوّلي هذا لسير عمل تتبُّع العمليات الجارية فقط، ولم يتم دمجه بعد مع تتبُّع نظام التشغيل Android أو "أداة تتبُّع النظام" في Studio Profiler، وسيتم إتاحتهما في إصدار Alpha مستقبلي.
/**
* 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)
}
}
}
التغييرات في واجهة برمجة التطبيقات
- اجعل
Tracerسمة من سماتTraceDriver. (Iabd9b) - إضافة إمكانية نشر السياق يدويًا (I899ff)
- إضافة إمكانية إضافة معلومات حول حزمة التنفيذ في قسم التتبُّع (If6a1b)
- تقديم واجهات برمجة التطبيقات الجديدة
androidx.tracing(I5102b) - السماح للأحداث الفورية باحتواء بيانات وصفية، وإضافة عدّادات إلى الأحداث الفورية والعدّادات (Ia2ed3)
- تقليل مساحة سطح واجهة برمجة التطبيقات التي تمّت إضافة التعليقات التوضيحية إليها باستخدام
@DelicateTracingApiيجب ألا يتطلّب أي عنصر في واجهة برمجة التطبيقات ذات المستوى الأعلى استخدام@DelicateTracingApi. (I565e0) - تبسيط عملية نقل السياق من خلال توحيد
PropagationToken(Iab839) - تثبيت واجهات برمجة التطبيقات
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()إلى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 من التتبُّع للسماح باستخدامه في
@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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- تم نقل كل الرموز من الوحدة
tracing-ktxإلىtracing. (Iba550) - تم تحويل الفئة
androidx.tracing.Traceإلى Kotlin. (Ie4e5d)
إصلاح الأخطاء
- تمت إزالة التحديد اليدوي للوصول إلى واجهات برمجة التطبيقات الجديدة للمنصة لأنّ ذلك يحدث تلقائيًا من خلال تصميم واجهة برمجة التطبيقات عند استخدام R8 مع الإصدار 7.3 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android (مثل الإصدار 3.3 من R8)، وجميع عمليات الإنشاء عند استخدام الإصدار 8.1 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android (مثل الإصدار 8.1 من D8). ننصح العملاء الذين لا يستخدمون المكوّن الإضافي لنظام Gradle المتوافق مع Android (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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- أزِل crossinline من التتبُّع للسماح باستخدامه في
@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()مع احتساب السلسلة والملف التعريفي المؤجّلَين يتم الآن أيضًا تخطّي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()مع احتساب السلسلة والملف التعريفي المؤجّلَين يتم الآن أيضًا تخطّي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()واجهة برمجة تطبيقات لفرض تفعيل ميزة تسجيل أقسام تتبُّع التطبيق (أي واجهات برمجة التطبيقات android.os.Trace / androidx.tracing) في الإصدارات غير القابلة للتصحيح. يمكنك استدعاء هذا الإجراء في بداية التشغيل لتفعيل تتبُّع النظام الدقيق غير القابل للتصحيح قبل طرح علامة البيان القابلة للتوصيف في الإصدار 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() لتفعيل ميزة تتبُّع أقسام التطبيق (أي واجهات برمجة التطبيقات android.os.Trace / andoridx.tracing) بشكل إجباري في الإصدارات غير القابلة للتصحيح. يجب استدعاء هذا الإجراء في بداية عملية بدء التشغيل لتفعيل تتبُّع النظام الدقيق غير القابل للتصحيح قبل طرح علامة البيان profileable في الإصدار 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 هذه التعديلات.
إصلاح الأخطاء
- التوافق مع حجم الصفحات البالغ 16 كيلوبايت (b7a7dd)
- تمت إزالة التحديد اليدوي للوصول إلى واجهات برمجة التطبيقات الجديدة للمنصة لأنّ ذلك يحدث تلقائيًا من خلال تصميم واجهة برمجة التطبيقات عند استخدام R8 مع الإصدار 7.3 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android (مثل الإصدار 3.3 من R8)، وجميع عمليات الإنشاء عند استخدام الإصدار 8.1 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android (مثل الإصدار 8.1 من D8). ننصح العملاء الذين لا يستخدمون المكوّن الإضافي لنظام Gradle المتوافق مع Android (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 هذه التعديلات.
الميزات الجديدة
- تم تفعيل إمكانية تتبُّع الأخطاء عند بدء تشغيل التطبيق (التشغيل على البارد).
الإصدار 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 هذه التعديلات.
التغييرات في واجهة برمجة التطبيقات
- تمت إعادة تسمية
androidx.tracing.perfetto.Traceإلىandroidx.tracing.perfetto.PerfettoSdkTrace(I44af8) - تمت إعادة تسمية ثوابت "رمز الخروج" لتصبح "رمز النتيجة" في البروتوكول من أجل الاتساق (Id1d1e)
- تمت إعادة تسمية
EnableTracingResponseإلىResponse. (I56275) - تمت إضافة خيار لتفعيل تتبُّع التشغيل على البارد في وضع مستمر. تمت إضافة دالة لمحو تتبُّع التشغيل على البارد (دائم أو غير دائم). (Iaa09d)
- تمت مطابقة واجهات برمجة التطبيقات الخاصة بحزمة تطوير البرامج (SDK) لأداة "تتبُّع الأداء" مع
android.os.Trace. (I73ba0، b/282199917) - تم الانتقال إلى نمط المصنع في
LibrarySourceما يتيح إضافة حالات استخدام مستقبلية بسهولة إلى واجهة برمجة التطبيقات عند الحاجة (مثل تحميل ملف.soمباشرةً). (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 الخاصة بواجهات برمجة التطبيقات
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، لأنّه لا يمكننا معرفة الإصدار إذا تعذّر التواصل مع الحزمة. (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" أو واجهة مستخدم Perfetto.
androidx.tracing:tracing-perfetto-binaryهي مجموعة من التبعيات الثنائية المطلوبة لحزمة androidx.tracing:tracing-perfetto.
androidx.tracing:tracing-perfetto-commonهي اعتمادية داخلية لحزمة androidx.tracing:tracing-perfetto ويمكن أن تستخدمها الأدوات للدمج مع حزمة androidx.tracing:tracing-perfetto.