این راهنمای سریع نحوه راهاندازی Firebase Crashlytics در برنامه شما با Firebase Crashlytics SDK را شرح میدهد تا بتوانید گزارشهای جامعی از خرابیها را در کنسول Firebase دریافت کنید.با Crashlytics برای اندروید، گزارشهایی برای خرابیها، خطاهای غیرمهلک و خطاهای «برنامه پاسخ نمیدهد» (ANR) دریافت میکنید.
راهاندازی Crashlytics نیازمند انجام وظایفی هم در کنسول Firebase و هم در IDE شما است (مانند اضافه کردن فایل پیکربندی Firebase و Crashlytics SDK). برای تکمیل راهاندازی، باید یک کرش آزمایشی را مجبور کنید تا اولین گزارش کرش شما را به Firebase ارسال کند.
قبل از اینکه شروع کنی
اگر هنوز Firebase را به پروژه اندروید خود اضافه نکردهاید، آن را اضافه کنید. اگر برنامه اندروید ندارید، میتوانید یک برنامه نمونه را دانلود کنید.
توصیه میشود : برای اینکه گزارشهای breadcrumb به طور خودکار اقدامات کاربر را که منجر به خرابی، عدم موفقیت یا رویداد ANR میشود، درک کنند، باید Google Analytics در پروژه Firebase خود فعال کنید.
اگر پروژه Firebase فعلی شما Google Analytics فعال نکرده است، میتوانید Google Analytics از تب Integrations فعال کنید.
> تنظیمات پروژه در کنسول Firebase . اگر در حال ایجاد یک پروژه جدید Firebase هستید، در طول فرآیند ایجاد پروژه، Google Analytics فعال کنید.
مطمئن شوید که برنامه شما حداقل نسخههای مورد نیاز زیر را دارد:
- گریدل ۸.۰
- افزونه اندروید گریدل ۸.۱.۰
- افزونه Gradle سرویسهای گوگل نسخه ۴.۴.۱
مرحله ۱ : Crashlytics SDK را به برنامه خود اضافه کنید
در فایل Gradle ماژول (سطح برنامه) خود (معمولاً<project>/<app-module>/build.gradle.kts یا <project>/<app-module>/build.gradle )، وابستگی مربوط به کتابخانه Crashlytics NDK برای اندروید را اضافه کنید. توصیه میکنیم برای کنترل نسخهبندی کتابخانه Firebase Android BoM استفاده کنید.برای استفاده از گزارشهای breadcrumb ، کیت توسعه نرمافزار Firebase برای Google Analytics را نیز به برنامه خود اضافه کنید. مطمئن شوید که گوگل آنالیتیکس در پروژه فایربیس شما فعال است .
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.5.0")) // Add the dependencies for the Crashlytics NDK and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-crashlytics-ndk") implementation("com.google.firebase:firebase-analytics") }
با استفاده از Firebase Android BoM ، برنامه شما همیشه از نسخههای سازگار کتابخانههای اندروید Firebase استفاده خواهد کرد.
(جایگزین) اضافه کردن وابستگیهای کتابخانه Firebase بدون استفاده از BoM
اگر تصمیم به استفاده از Firebase BoM ندارید، باید هر نسخه از کتابخانه Firebase را در خط وابستگی آن مشخص کنید.
توجه داشته باشید که اگر از چندین کتابخانه Firebase در برنامه خود استفاده میکنید، اکیداً توصیه میکنیم از BoM برای مدیریت نسخههای کتابخانه استفاده کنید، که تضمین میکند همه نسخهها سازگار هستند.
dependencies { // Add the dependencies for the Crashlytics NDK and Analytics libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-crashlytics-ndk:20.0.3") implementation("com.google.firebase:firebase-analytics:23.0.0") }
مرحله 2 : افزونه Crashlytics Gradle را به برنامه خود اضافه کنید
در فایل Gradle سطح ریشه (سطح پروژه) خود (
<project>/build.gradle.ktsیا<project>/build.gradle)، افزونه Crashlytics Gradle را به بلوکpluginsاضافه کنید:Kotlin
plugins { // Make sure that you have the AGP plugin 8.1+ dependency id("com.android.application") version "8.1.4" apply false // ... // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency id("com.google.gms.google-services") version "4.4.4" apply false // Add the dependency for the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") version "3.0.6" apply false }
Groovy
plugins { // Make sure that you have the AGP plugin 8.1+ dependency id 'com.android.application' version '8.1.4' apply false // ... // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency id 'com.google.gms.google-services' version '4.4.4' apply false // Add the dependency for the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' version '3.0.6' apply false }
در فایل Gradle ماژول (سطح برنامه) خود (معمولاً
<project>/<app-module>/build.gradle.ktsیا<project>/<app-module>/build.gradle)، افزونه Crashlytics Gradle را اضافه کنید:Kotlin
plugins { id("com.android.application") // ... // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") }
Groovy
plugins { id 'com.android.application' // ... // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' }
مرحله ۳ : برای اتمام راهاندازی، یک کرش آزمایشی را اعمال کنید
برای تکمیل راهاندازی Crashlytics و مشاهده دادههای اولیه در داشبورد Crashlytics کنسول Firebase ، باید یک crash آزمایشی را اجباری کنید.
کدی را به برنامه خود اضافه کنید که بتوانید از آن برای ایجاد خطای تست استفاده کنید.
شما میتوانید با استفاده از کد زیر در
MainActivityبرنامه خود، دکمهای به برنامه خود اضافه کنید که با فشردن آن، برنامه از کار بیفتد (Crash). این دکمه با عنوان "Test Crash" نامگذاری شده است.Kotlin
val crashButton = Button(this) crashButton.text = "Test Crash" crashButton.setOnClickListener { throw RuntimeException("Test Crash") // Force a crash } addContentView(crashButton, ViewGroup.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT))
Java
Button crashButton = new Button(this); crashButton.setText("Test Crash"); crashButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { throw new RuntimeException("Test Crash"); // Force a crash } }); addContentView(crashButton, new ViewGroup.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
برنامه خود را بسازید و اجرا کنید.
برای ارسال اولین گزارش خرابی برنامهتان، تست کرش را اجباری کنید:
برنامه خود را از دستگاه آزمایشی یا شبیهساز خود باز کنید.
در برنامهتان، دکمهی «تست کرش» را که با استفاده از کد بالا اضافه کردهاید، فشار دهید.
پس از اینکه برنامه شما از کار افتاد، آن را مجدداً راهاندازی کنید تا برنامه شما بتواند گزارش خرابی را به Firebase ارسال کند.
برای مشاهدهی خرابی آزمایشی خود، به داشبورد Crashlytics در کنسول Firebase بروید.
اگر کنسول را رفرش کردهاید و هنوز بعد از پنج دقیقه خطای آزمایشی را مشاهده نمیکنید، گزارشگیری اشکالزدایی را فعال کنید تا ببینید آیا برنامه شما گزارشهای خرابی را ارسال میکند یا خیر.
و تمام! Crashlytics اکنون برنامه شما را از نظر خرابیها، خطاهای غیرمهلک و ANRها رصد میکند. برای مشاهده و بررسی تمام گزارشها و آمارهای خود، به داشبورد Crashlytics مراجعه کنید.
مراحل بعدی
- با افزودن گزارشهای اختیاری، گزارشهای لاگ، کلیدها و ردیابی خطاهای غیرمهلک ، تنظیمات گزارش خرابی خود را سفارشی کنید .
- با Google Play ادغام شوید تا بتوانید گزارشهای خرابی برنامه اندروید خود را بر اساس مسیر Google Play مستقیماً در داشبورد Crashlytics فیلتر کنید. این به شما امکان میدهد داشبورد خود را بهتر روی نسخههای خاص متمرکز کنید.
- در اندروید استودیو، دادههای Crashlytics را مشاهده و فیلتر کنید.
- از پنجره App Quality Insights (AQI) در اندروید استودیو برای مشاهده دادههای Crashlytics در کنار کد خود استفاده کنید - نیازی نیست برای شروع اشکالزدایی مشکلات اصلی، بین داشبورد Crashlytics و IDE مدام در حال رفت و آمد باشید.
- یاد بگیرید که چگونه از پنجره AQI در مستندات اندروید استودیو استفاده کنید .
- ما دوست داریم از شما بشنویم! با ارسال گزارش اشکال، بازخورد خود را در مورد پنجره AQI برای ما ارسال کنید.