با Firebase Crashlytics شروع کنید


این شروع سریع نحوه راه‌اندازی Firebase Crashlytics را در برنامه خود با Firebase Crashlytics SDK توضیح می‌دهد تا بتوانید گزارش‌های خرابی جامع را در کنسول Firebase دریافت کنید.با Crashlytics برای Android، گزارش‌هایی برای خرابی‌ها، خطاهای غیرمرگبار و خطاهای «برنامه پاسخ نمی‌دهد» (ANR) دریافت می‌کنید.

راه‌اندازی Crashlytics به وظایفی هم در کنسول Firebase و هم در IDE شما نیاز دارد (مانند افزودن یک فایل پیکربندی Firebase و Crashlytics SDK). برای تکمیل راه‌اندازی، باید یک خرابی آزمایشی را مجبور کنید تا اولین گزارش خرابی خود را به Firebase ارسال کنید.

قبل از شروع

  1. اگر قبلاً این کار را نکرده اید، Firebase را به پروژه اندروید خود اضافه کنید . اگر برنامه اندروید ندارید، می توانید یک برنامه نمونه دانلود کنید.

  2. توصیه می‌شود : برای دریافت خودکار گزارش‌های خرده نان برای درک اقدامات کاربر که منجر به خرابی، رویداد غیرمرگبار یا ANR می‌شود، باید Google Analytics در پروژه Firebase خود فعال کنید.

    • اگر پروژه Firebase موجود شما Google Analytics فعال نکرده است، می توانید Google Analytics از برگه Integrations فعال کنید. > تنظیمات پروژه در کنسول Firebase .

    • اگر در حال ایجاد یک پروژه Firebase هستید، Google Analytics در جریان کار ایجاد پروژه فعال کنید.

  3. مطمئن شوید که برنامه شما حداقل نسخه های مورد نیاز زیر را دارد:

    • Gradle 8.0
    • پلاگین اندروید Gradle 8.1.0
    • خدمات گوگل پلاگین Gradle 4.4.1

مرحله 1 : Crashlytics SDK را به برنامه خود اضافه کنید

در فایل Gradle ماژول (سطح برنامه) خود (معمولا <project>/<app-module>/build.gradle.kts یا <project>/<app-module>/build.gradle )، وابستگی را برای کتابخانه Crashlytics NDK برای Android اضافه کنید. توصیه می‌کنیم از Firebase Android BoM برای کنترل نسخه‌سازی کتابخانه استفاده کنید.

برای بهره‌مندی از گزارش‌های خرده نان ، Firebase SDK برای Google Analytics را نیز به برنامه خود اضافه کنید. مطمئن شوید که Google Analytics در پروژه Firebase شما فعال است .

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.16.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 Android استفاده می‌کند.

(جایگزین) وابستگی های کتابخانه 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:19.4.4")
    implementation("com.google.firebase:firebase-analytics:22.5.0")
}
به دنبال یک ماژول کتابخانه خاص کاتلین هستید؟ از اکتبر 2023 ( Firebase BoM 32.5.0) ، توسعه دهندگان Kotlin و Java می توانند به ماژول کتابخانه اصلی وابسته باشند (برای جزئیات، به سؤالات متداول در مورد این ابتکار مراجعه کنید).

مرحله 2 : افزونه Crashlytics Gradle را به برنامه خود اضافه کنید

  1. در فایل 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.3" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.4" 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.3' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.4' apply false
    }
  2. در فایل 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'
    }

مرحله 3 : یک تصادف تست را برای پایان دادن به تنظیمات مجبور کنید

برای به پایان رساندن تنظیم Crashlytics و دیدن داده های اولیه در داشبورد Crashlytics کنسول Firebase ، باید یک تصادف آزمایش را مجبور کنید.

  1. کد را به برنامه خود اضافه کنید که می توانید از آن برای مجبور کردن یک تصادف آزمایش استفاده کنید.

    می توانید از کد زیر در MainActivity برنامه خود استفاده کنید تا یک دکمه به برنامه خود اضافه کنید که در صورت فشار دادن ، باعث خرابی می شود. این دکمه با عنوان "تست تصادف" برچسب گذاری شده است.

    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));
  2. اپلیکیشن خود را بسازید و اجرا کنید.

  3. به منظور ارسال اولین گزارش تصادف برنامه خود ، تست را مجبور کنید:

    1. برنامه خود را از دستگاه تست یا شبیه ساز خود باز کنید.

    2. در برنامه خود ، دکمه "تست تصادف" را که با استفاده از کد بالا اضافه کردید ، فشار دهید.

    3. پس از خراب شدن برنامه ، آن را مجدداً راه اندازی کنید تا برنامه شما بتواند گزارش Crash را به Firebase ارسال کند.

  4. برای دیدن تصادف تست خود به داشبورد Crashlytics کنسول Firebase بروید.

    اگر کنسول را تازه کرده اید و هنوز شاهد سقوط تست بعد از پنج دقیقه نیستید ، ورود به سیستم اشکال زدایی را فعال کنید تا ببینید برنامه شما در حال ارسال گزارش های Crash است یا خیر.


و بس! Crashlytics اکنون برنامه شما را برای تصادفات ، خطاهای غیر کشنده و ANR نظارت می کند. برای مشاهده و بررسی تمام گزارش ها و آمار خود به داشبورد Crashlytics مراجعه کنید.

مراحل بعدی

  • با Google Play ادغام شوید تا بتوانید گزارش های خرابی برنامه Android خود را توسط Google Play Track مستقیماً در داشبورد Crashlytics فیلتر کنید. این به شما امکان می دهد داشبورد خود را بهتر روی ساختهای خاص متمرکز کنید.
  • در Android Studio ، داده های Crashlytics را مشاهده و فیلتر کنید.