تحليل المشاكل الواردة من Firebase Crashlytics و"مؤشرات Android الحيوية" باستخدام "إحصاءات جودة التطبيقات"
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يمكنك الاطّلاع على بيانات أعطال التطبيق من
Firebase Crashlytics و
مؤشرات Android الحيوية
مباشرةً في Android Studio واتّخاذ الإجراءات اللازمة بشأنها. ينقل هذا الدمج بيانات تتبُّع تسلسل استدعاء الدوالّ والإحصاءات المتعلّقة بالأعطال من Crashlytics وGoogle Play إلى نافذة أداة إحصاءات جودة التطبيقات في "محرّر بيئة التطوير المتكاملة (IDE) في Studio"، ما يُغنيك عن التبديل بين المتصفّح و"محرّر بيئة التطوير المتكاملة (IDE)". يمكن لفِرق التطوير الاستفادة من الإمكانات الرئيسية، بما في ذلك ما يلي:
الاطّلاع على الأسطر في الرمز البرمجي التي تم تمييزها عندما تحتوي على بيانات حدث مرتبطة في Crashlytics
اطّلِع على تتبع تسلسل استدعاء الدوالّ لأهم الأعطال وانقر على تتبع تسلسل استدعاء الدوالّ للانتقال إلى
السطور ذات الصلة في الرمز البرمجي.
الاطّلاع على إحصاءات موجزة عن أهم أحداث الأعطال وغير الفادحة، على سبيل المثال،
المجمّعة حسب الشركة المصنّعة للجهاز وإصدار Android
فلترة الأحداث حسب السمات، بما في ذلك الخطورة والوقت وإصدار التطبيق
احصل على رابط متصفّح يفتح صفحة لوحة بيانات Crashlytics التي تتضمّن مزيدًا من التفاصيل
عن الحدث.
الحصول على إحصاءات تساعدك في فهم الأسباب الجذرية لgelin مشاكل معيّنة وحلّها بسهولة أكبر
تتوفّر تقارير "مؤشرات Android الحيوية" لجميع التطبيقات المنشورة على Google Play. إذا
لم تكن تستخدِم Crashlytics بعد وأردت الاطّلاع على مزيد من المعلومات حول ميزات
التطبيق، يمكنك الاطّلاع على Firebase Crashlytics.
البدء
للاطّلاع على بيانات Crashlytics في Android Studio، عليك إعداد Firebase و
Crashlytics في مشروع تطبيقك. في ما يلي الخطوات التي يجب اتّباعها: افتح "مساعِد Firebase" في IDE
"استوديو Android" من خلال الانتقال إلى الأدوات > Firebase، وانقر على Crashlytics، ثم
اتّبِع البرنامج التعليمي لإضافة Firebase وCrashlytics إلى مشروعك. يمكنك قراءة المزيد من المعلومات عن سير عمل "مساعِد Firebase" في دليل بدء استخدام Firebase لنظام التشغيل Android.
إذا سبق لك إضافة Firebase وCrashlytics إلى تطبيقك، سجِّل الدخول إلى
حساب المطوِّر في IDE بالنقر على رمز الصورة الرمزية
.
بعد تسجيل الدخول، انقر على نافذة أداة إحصاءات جودة التطبيقات. من المفترض أن تتم تعبئة اللوحات بتقارير من Crashlytics.
تحليل مؤشرات Android الحيوية
تتضمّن إحصاءات جودة التطبيقات بيانات مؤشرات Android الحيوية. يتيح لك ذلك الوصول بسهولة أكبر إلى المقاييس الأساسية التي يجمعها Google Play و
تحسين تجربة المستخدم. استخدِم "مؤشرات Android الحيوية" لحلّ المشاكل المتعلّقة
بثبات التطبيق للمساعدة في تحسين جودة تطبيقك على Google Play.
يمكنك عرض مشاكل "مؤشرات Android الحيوية" وفلترها والانتقال من تتبع تسلسل استدعاء الدوال البرمجية إلى
الرمز البرمجي، وكل ذلك من نافذة أداة إحصاءات جودة التطبيقات. للبدء، اتّبِع
الخطوات التالية:
سجِّل الدخول إلى حساب المطوِّر الخاص بك في Android Studio باستخدام رمز الملف الشخصي
في نهاية شريط الأدوات.
افتح إحصاءات جودة التطبيق من خلال النقر على نافذة الأداة في IDE Android Studio أو النقر على عرض > نوافذ الأدوات > إحصاءات جودة التطبيق.
انقر على علامة التبويب مؤشرات Android الحيوية ضمن إحصاءات جودة التطبيقات.
اختياري: لاستخدام دمج التحكّم في الإصدارات لإصدار قابل لتصحيح الأخطاء، أضِف حزمة تطوير البرامج (SDK) لنظام Crashlytics من Firebase (أو فاتورة مواد Firebase لنظام التشغيل Android) إلى تطبيقك. بعد ذلك، أضِف الرمز التالي إلى ملف build.gradle.kts أو build.gradle على مستوى الوحدة. تكون العلامة مفعَّلة تلقائيًا في الإصدارات
(غير القابلة لتصحيح الأخطاء).
تحتوي نافذة أداة إحصاءات جودة التطبيق على بيانات غنية تمنحك إحصاءات
عن الأحداث التي يواجهها المستخدمون، وروابط لمساعدتك في الانتقال سريعًا
إلى مصادر هذه الأحداث.
استخدِم القائمة المنسدلة "رقم تعريف التطبيق" لاختيار رقم تعريف التطبيق الذي تريد
تحليله. على سبيل المثال، أثناء العمل على إصدار تصحيح الأخطاء من تطبيقك في IDE، قد تريد الاطّلاع على بيانات الأحداث لإصدار التطبيق العلني الذي يثبّته المستخدمون.
تعرض لوحة المشاكل أهم الأحداث التي تتوفّر لها بيانات في Crashlytics،
ويتم ترتيبها حسب الأعطال الأكثر تأثيرًا.
عرض الأحداث حسب الصيغ أو مجموعات الأحداث التي تتضمّن تتبعات تسلسل استدعاء الدوالّ مشابهة
يساعدك تحليل الأحداث حسب الصيغة في تحديد الأسباب الأساسية
للأعطال.
تعرض علامة التبويب تتبُّع تسلسل استدعاء الدوال البرمجية تفاصيل عن آخر
مرّة حدث فيها الحدث الذي تنقر عليه في لوحة المشاكل. يمكنك الاطّلاع على مسار تسلسل استدعاء الدوال البرمجية لحدث
والنقر عليه للانتقال إلى الأسطر ذات الصلة في codebase. إذا تغيّر الرمز البرمجي منذ حدوث العُطل، انقر على
عرض الاختلاف بجانب الخطأ في قائمة تتبُّع تسلسل استدعاء الدوال البرمجية لعرض اختلاف بين
الرمز البرمجي الحالي وإصدار قاعدة الرموز البرمجية الذي أدّى إلى حدوث العُطل.
تتوفّر أيضًا معلومات عن نوع الجهاز المتأثّر وإصدار Android ووقت حدوث الحدث، بالإضافة إلى رابط يؤدي إلى الحدث في لوحة بيانات Firebase Crashlytics. لتصفّح معلومات عن أحداث متعدّدة في مجموعة،
استخدِم الأسهم المتّجهَين لليسار واليمين. انقر على إغلاق المشكلة لإغلاق مشكلة
مباشرةً من اللوحة.
تعرض علامتا التبويب المفاتيح والسجلّات سجلّات وزوجات مفتاح/قيمة مخصّصة لكل تقرير من تقارير Crashlytics.
تُقسِّم لوحة التفاصيل أعداد الأعطال حسب نوع الجهاز
وإصدار Android، ما يتيح لك تحديد مجموعات المستخدمين الأكثر تأثُّرًا. ويعرِض
أيضًا إصدارات التطبيق التي حدث فيها العُطل وعدد المستخدمين
المتأثّرين به.
اقرأ الملاحظات وارفقها بالمشاكل حتى تظهر في "وحدة تحكُّم Firebase"
ولفريقك. لكتابة ملاحظة عن مشكلة، اختَر المشكلة
وافتح لوحة الملاحظات. يجب أن يكون لديك إذن بالكتابة في
مشروع Crashlytics لكتابة الملاحظات. تظهر المشاكل في الملاحظات مع رمز
"الملاحظات"
في لوحة المشاكل.
استخدِم مجموعة متنوعة من الفلاتر للتركيز على مجموعات فرعية معيّنة من الأحداث. يمكنك
اختيار الأحداث الخطيرة
،
وغير الخطيرة
،
وأخطاء ANR،
وكذلك الفلترة حسب الوقت وإصدار التطبيق
إشارة Crashlytics،
ونوع الجهاز وطرازه وإصدار نظام التشغيل Android. يُرجى العلم أنّه بالنسبة إلى حالات إشارة Crashlytics، تُعتبر المشكلة متراجعة عندما يتم تسجيلها
في الماضي وتحدث مرة أخرى في إصدار جديد من التطبيق.
بالإضافة إلى إمكانية الانتقال من تتبع تسلسل استدعاء الدوال إلى الرمز البرمجي، يمكنك أيضًا
الانتقال من الرمز البرمجي إلى تتبع تسلسل استدعاء الدوال: يضيف "استوديو Android" الآن تعليقات توضيحية على أسطر الرمز البرمجي التي
ترتبط بالأعطال باستخدام رمز فاصل الأعطال
حتى تتمكّن من
رصدها وتصحيح أخطائها بسهولة.
عند تمرير مؤشر الماوس فوق رمز العُطل، تظهر نافذة منبثقة تعرض عدد الأحداث
التي تتضمّن سطر الرمز البرمجي هذا ومعدّلات تكرار الأحداث.
انقر على رمز العُطل للحصول على قائمة أكثر تفصيلاً بالأحداث، بما في ذلك
وتيرة حدوث حدث معيّن وعدد المستخدمين المتأثّرين به. انقر على حدث معيّن
للانتقال إلى تفاصيل الحدث في نافذة أداة إحصاءات جودة التطبيقات.
أعداد مختلفة بين مؤشرات Android الحيوية وCrashlytics
يُرجى العِلم أنّ ميزات Android الحيوية وCrashlytics قد تُبلغ عن قيم مختلفة ل
أعداد المستخدمين والأحداث المرتبطة بالتعطُّل نفسه. تحدث هذه الاختلافات
لأنّ Play وCrashlytics يمكنهما رصد الأعطال في أوقات مختلفة وباستخدام
مستخدمين مختلفين. في ما يلي سببان لاختلاف أعداد عمليات تسجيل الأعطال في Play وCrashlytics:
يرصد Play الأعطال بدءًا من وقت التشغيل، في حين يرصد Crashlytics
الأعطال التي تحدث بعد بدء حزمة تطوير البرامج (SDK) من Crashlytics.
إذا أوقف المستخدم ميزة إعداد تقارير الأعطال عند الحصول على هاتف جديد، لن يتم الإبلاغ عن هذه الأعطال
إلى Play. ومع ذلك، ترصد أداة Crashlytics الأعطال استنادًا إلى
سياسة الخصوصية الخاصة بالتطبيق.
التحقيق في المشاكل عندما تكون وظائف التطبيق محدودة بلا اتصال بالإنترنت
إذا قدّمت طلبًا جديدًا، مثلاً من خلال النقر على إعادة تحميل، وتعذّر على Android Studio التواصل مع Crashlytics، تتيح لك نافذة إحصاءات جودة التطبيقات
استخدام الوضع بلا إنترنت.
وفي هذا الوضع، يمكنك مواصلة التحقيق في المشاكل وآخر الأحداث
من البيانات المخزّنة مؤقتًا. لا تتوفّر بعض الوظائف، مثل تغيير بعض خيارات الفلتر أو
إغلاق المشاكل. لإعادة محاولة الاتصال بخدمة Crashlytics
والعودة إلى حالة الاتصال بالإنترنت، انقر على إعادة الربط.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ 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,["# Analyze issues from Firebase Crashlytics and Android Vitals with App Quality Insights\n\n| **Note:** App Quality Insights is only available in the current stable channel version of Android Studio, the three most recent previous major versions, and patches associated with those versions. If you are using an older version of Android Studio, you will need to update to use App Quality Insights. [More\n| information](/studio/releases#service-compat).\n\nYou can see and act on app crash data from\n[Firebase Crashlytics](https://firebase.google.com/products/crashlytics) and\n[Android Vitals](/topic/performance/vitals)\ndirectly in Android Studio. This integration pulls stack trace data and crash\nstatistics from Crashlytics and Google Play into the **App Quality Insights**\ntool window in the Studio IDE, so you don't have to jump back and forth between\nyour browser and the IDE. Development teams can benefit from key capabilities\nincluding the following:\n\n- See lines in your code highlighted when they have related Crashlytics event data.\n- See the stack trace for top crashes and click on the stack trace to jump to the relevant lines in your code.\n- See summary statistics about top crash and non-fatal events, for example grouped by device manufacturer and Android version.\n- Filter events by attributes including severity, time, and app version.\n- Get a browser link that opens the Crashlytics dashboard page with more details about the event.\n- Get insights that help you more easily understand and resolve root causes of certain issues.\n\nAndroid Vitals reports are available to all apps published to Google Play. If\nyou're not using Crashlytics yet and would like to learn more about its\nofferings, see\n[Firebase Crashlytics](https://firebase.google.com/products/crashlytics).\n\nGet started\n-----------\n\nTo see Crashlytics data in Android Studio, you need to set up Firebase and\nCrashlytics in your app project. Here's how: open the Firebase Assistant in\nAndroid Studio by going to **Tools \\\u003e Firebase** , click **Crashlytics** , and then\nfollow the tutorial to add Firebase and Crashlytics to your project. You can\nread more about the Firebase Assistant workflow in\n[Firebase's getting started guide for Android](https://firebase.google.com/docs/android/setup#assistant).\n\nIf you've already added Firebase and Crashlytics to your app, sign in to your\nDeveloper account in the IDE by clicking on the avatar icon\n.\nAfter you sign in, click the **App Quality Insights** tool window\n. You should\nsee the panels populate with reports from Crashlytics.\n\nAnalyze Android vitals\n----------------------\n\n**App Quality Insights** includes [Android vitals](/topic/performance/vitals)\ndata. This lets you more easily access core metrics collected by Google Play and\nimprove your user experience. Use Android vitals to address issues related to\napp stability to help improve the quality of your app on Google Play.\n\nYou can view Android vitals issues, filter them, and jump from stack trace to\ncode all from the **App Quality Insights** tool window. To get started, follow\nthese steps:\n\n1. Sign in to your developer account in Android Studio using the profile icon at the end of the toolbar.\n2. Open **App Quality Insights** by clicking the tool window in Android Studio or clicking **View \\\u003e Tool Windows \\\u003e App Quality Insights**.\n3. Click the **Android vitals** tab within **App Quality Insights**.\n4. Optional: To use version control integration for a debuggable build, add the\n latest\n [Firebase Crashlytics SDK](https://firebase.google.com/docs/crashlytics/get-started?platform=android#add-sdk)\n (or Firebase Android Bill of Materials) to your app. Then add the following\n code to the module-level `build.gradle.kts` or `build.gradle` file. Release\n (non-debuggable) builds have the flag enabled by default.\n\n | **Note:** App Quality Insights only supports version control using git.\n\n\u003cbr /\u003e\n\n### Kotlin\n\n```kotlin\nandroid {\n buildTypes {\n getByName(\"debug\") {\n vcsInfo {\n include = true\n }\n }\n }\n}\n```\n\n### Groovy\n\n```groovy\nandroid {\n buildTypes {\n debug {\n vcsInfo {\n include true\n }\n }\n }\n}\n```\n\n\u003cbr /\u003e\n\nAnalyze Crashlytics data in Android Studio\n------------------------------------------\n\nThe **App Quality Insights** tool window has rich data that gives you insight\ninto the events your users are encountering, and links to help you quickly\nnavigate to the sources of those events.\n\n1. Use the application ID dropdown menu to select the app ID you want to analyze. For example, while you might work on the debug version of your app in the IDE, you might want to see event data for your production version of your app that your users install.\n2. The **Issues** panel shows the top events that Crashlytics has data for, and is sorted by your most impactful crashes.\n3. View events by *variants*, or groups of events that have similar stack traces. Analyzing events by variant helps you identify the root causes of a crash.\n4. The **Stack trace** tab shows details about the latest\n occurrence of the event you click in the **Issues** panel. You can see the\n event's stack trace and click the stack trace to jump to the relevant lines in\n your codebase. If your code has changed since the crash occurred, click\n **show diff** next to the error in the stack trace to view a diff between\n your current code and the version of your codebase that generated the crash.\n\n There is also information about the device type affected, its Android\n version, and the time the event occurred, as well a link to the event in the\n Firebase Crashlytics dashboard. To browse info for multiple events in a group,\n use the left and right arrows. Click **Close issue** to close an issue\n directly from the panel.\n5. The **Keys** and **Logs** tabs show custom key-value pairs and logs for each Crashlytics report.\n6. The **Details** panel breaks down the crash counts by device type and Android version, so you can determine which user groups are most affected. It also shows which app versions experienced the crash and the number of users affected.\n7. Read and attach notes to issues so that they are visible in the Firebase Console and your teammates. To write a note about an issue, select the issue and open the **Notes** panel. You must have write permission to the Crashlytics project in order to write notes. Issues with notes appear with a \"notes\" icon in the **Issues** panel.\n8. Use the variety of filters to hone in on certain subsets of events. You can select or deselect events that are Fatal , Non-Fatal , and [ANRs](/topic/performance/anrs/keep-your-app-responsive) , as well as filter by time, app version, [Crashlytics Signal](https://firebase.google.com/support/releases#october_8_2021), device make and model, and Android platform version. Note that for the Crashlytics Signal states, an issue is considered *regressed* when it's been closed in the past and has occurred again in a new version of the app.\n\nIn addition to being able to navigate from stack trace to code, you can also\njump from code to stack trace: Android Studio now annotates lines of code that\nare related to crashes with a crash gutter icon\nso you\ncan easily spot and debug them.\n\nWhen you hover over the crash icon, a pop-up appears that shows how many events\ninvolve that line of code, and the event frequencies.\n\nClick on the crash icon for a more detailed list of events, including the\nfrequency of and number of users affected by a given event. Click on a specific\nevent to jump to the event details in the **App Quality Insights** tool window.\n\n### Different numbers between Android vitals and Crashlytics\n\nNote that Android vitals and Crashlytics might report different values for the\nnumbers of users and events associated with the same crash. These discrepancies\nhappen because Play and Crashlytics can catch crashes at different times and for\ndifferent users. Here are a couple reasons for why the Play and Crashlytics\ncounts might differ:\n\n- Play catches crashes starting at boot time, whereas Crashlytics catches crashes that happen after the Crashlytics SDK initializes.\n- If a user opts out of crash reporting when they get a new phone, those crashes aren't reported to Play; however, Crashlytics catches crashes based on an app's own privacy policy.\n\nInvestigate with limited functionality when offline\n---------------------------------------------------\n\nIf you make a new request, for example by clicking **Refresh** , and Android\nStudio is unable to communicate with Crashlytics, the **App Quality Insights**\nwindow lets you to enter **Offline Mode**.\n\nWhile in this mode, you can continue to investigate issues and the latest events\nfrom cached data. Certain functionality, such as changing some filter options or\nclosing issues, isn't available. To retry your connection to Crashlytics\nand return to an online state, click **Reconnect**\n."]]