تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتيح لك تسجيل طرق Java/Kotlin التي يتم استدعاؤها أثناء تنفيذ رموز تطبيقك الاطّلاع على حزمة الاستدعاء واستخدام وحدة المعالجة المركزية في وقت معيّن، مع فلترة النتائج حسب طرق Java/Kotlin. تكون هذه البيانات مفيدة لتحديد أقسام الرمز التي تستغرق وقتًا طويلاً أو تستهلك الكثير من موارد النظام لتنفيذها. إذا كنت تريد عرضًا كاملاً
لـ callstack يتضمّن إطارات طلبات البيانات الأصلية، استخدِم مهمة إنشاء عينة من callstack.
عند تسجيل طرق Java/Kotlin باستخدام أداة تحليل الأداء في "استوديو Android"، يمكنك اختيار نوع التسجيل:
التتبُّع: يتم تزويد تطبيقك بأدوات في وقت التشغيل لتسجيل طابع زمني في بداية كل استدعاء دالة ونهايته. يتم جمع الطوابع الزمنية ومقارنتها
لإنشاء بيانات تتبُّع الطريقة، بما في ذلك معلومات التوقيت. يجب استخدام التتبُّع عندما يهمّك معرفة الطرق الدقيقة التي يتم استدعاؤها. بما أنّ عملية التتبُّع تتطلّب مجهودًا كبيرًا، ننصحك بأن لا تتجاوز مدة التسجيل خمس ثوانٍ إذا كنت تستخدم هذا الخيار.
أخذ العيّنات (الإصدار القديم): تسجّل هذه الطريقة سلسلة استدعاءات تطبيقك على فترات متكرّرة أثناء تنفيذ الرموز البرمجية المستندة إلى Java أو Kotlin في تطبيقك. يقارن محلّل الأداء مجموعات البيانات التي تم تسجيلها لاستخلاص معلومات حول التوقيت واستخدام الموارد في ما يتعلق بتنفيذ الرمز البرمجي المستند إلى Java أو Kotlin في تطبيقك. يجب استخدام أخذ العيّنات إذا كان يهمّك التوقيت أكثر من الطرق الدقيقة التي يتم استدعاؤها.
استخدام وحدة المعالجة المركزية: يعرض هذا المقياس استخدام تطبيقك لوحدة المعالجة المركزية كنسبة مئوية من إجمالي سعة وحدة المعالجة المركزية المتاحة حسب الوقت. يُرجى العِلم أنّ استخدام وحدة المعالجة المركزية لا يشمل طرق Java/Kotlin فقط، بل يشمل أيضًا الرمز البرمجي الأصلي. حدِّد قسمًا من المخطّط الزمني لفلترة التفاصيل حسب تلك الفترة الزمنية.
التفاعلات: تعرض تفاعلات المستخدمين وأحداث مراحل نشاط التطبيق على طول المخطط الزمني.
سلاسل التنفيذ: تعرض سلاسل التنفيذ التي يعمل عليها تطبيقك. في معظم الحالات، عليك التركيز أولاً على سلسلة المحادثات الأعلى التي تمثّل تطبيقك.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Record Java/Kotlin methods\n\nRecording the Java/Kotlin methods called during your app's code execution lets\nyou see the callstack and CPU usage at a given time, filtered to Java/Kotlin\nmethods. This data is useful for identifying sections of code that take a long\ntime or a lot of system resources to execute. If you want a full view of the\ncallstack including native call frames, use the\n[callstack sample](/studio/profile/sample-callstack)\nprofiling task.\n\nWhen you record Java/Kotlin methods using the Android Studio profiler, you can\nchoose the recording type:\n\n- Tracing: Instruments your app at runtime to record a timestamp at the\n beginning and end of each method call. Timestamps are collected and compared\n to generate method tracing data, including timing information. You should use\n tracing when you care about the exact methods being called. Because tracing is\n an intensive process, if you're using this option it's best to keep your\n recording around five seconds or less.\n\n | **Note:** The timing information from tracing might deviate from production due to the overhead introduced by the instrumentation itself.\n- Sampling (legacy): Captures your app's call stack at frequent intervals during\n your app's Java- or Kotlin-based code execution. The profiler compares sets of\n captured data to derive timing and resource usage information about your app's\n Java- or Kotlin-based code execution. You should use sampling if you care more\n about timing than the exact methods being called.\n\n| **Note:** If you're interested in tracing methods with lifecycles so short that they're likely to begin and end in between a sampling interval, and thus get missed by the profiler, you should try tracing instead.\n\nJava/Kotlin methods overview\n----------------------------\n\nAfter you [run the **Find CPU Hotspots** task](/studio/profile#start-profiling)\nthe Android Studio Profiler provides the following information:\n\n- **CPU Usage**: Shows CPU usage of your app as a percentage of total available CPU capacity by time. Note that the CPU usage includes not only Java/Kotlin methods but also native code. Highlight a section of the timeline to filter to the details for that time period.\n- **Interactions**: Shows user interaction and app lifecycle events along a timeline.\n- **Threads**: Shows the threads that your app runs on. In most cases, you'll want to first focus on the topmost thread that represents your app.\n\nTo identify the methods or call stacks that take the most time, use the\n[flame chart](/studio/profile/chart-glossary/flame-chart) or\n[top down](/studio/profile/chart-glossary/top-bottom-charts) chart."]]