شروع به کار با «پایش عملکرد» برای Android

قبل از شروع

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

مرحله ۱: کیت توسعه نرم‌افزار Performance Monitoring را به برنامه‌تان اضافه کنید

پس‌از افزودن کیت توسعه نرم‌افزار Performance Monitoring، Firebase به‌طور خودکار شروع به جمع‌آوری داده برای پرداز صفحه برنامه شما و داده‌های مربوط به چرخه حیات برنامه شما (مانند زمان شروع برنامه) می‌کند. برای فعال کردن Firebase برای نظارت بر درخواست‌های شبکه، باید افزونه Performance Monitoring Gradle را نیز اضافه کنید (مرحله بعدی).

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

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:35.0.2"))
    
        // Add the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf")
    }

    بااستفاده از Firebase Android BoM، برنامه شما همیشه از نسخه‌های سازگار کتابخانه‌های Firebase Android استفاده خواهد کرد.

    (جایگزین)  افزودن وابستگی‌های کتابخانه Firebase بدون استفاده از BoM

    اگر انتخاب کنید که از Firebase BoM استفاده نکنید، باید هر نسخه کتابخانه Firebase را در خط وابستگی آن مشخص کنید.

    توجه داشته باشید که اگر از چند کتابخانه Firebase در برنامه‌تان استفاده می‌کنید، اکیداً توصیه می‌کنیم از BoM برای مدیریت نسخه‌های کتابخانه استفاده کنید تا مطمئن شوید همه نسخه‌ها سازگار هستند.

    dependencies {
        // Add the dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf:23.0.1")
    }

  2. برنامه‌تان را بازهمگردانی کنید.

مرحله ۲: افزونه Performance Monitoring Gradle را به برنامه‌تان اضافه کنید

پس‌از افزودن افزایه Gradle Performance Monitoring، Firebase به‌طور خودکار شروع به جمع‌آوری داده‌ها برای درخواست‌های شبکه HTTP/S می‌کند. این افزونه همچنین به شما امکان می‌دهد تا بااستفاده از گزارمان AddTrace@، ردگیری‌های کد سفارشی را ابزاربندی کنید.

  1. در فایل Gradle سطح ریشه (سطح پروژه) (<project>/build.gradle.kts یا <project>/build.gradle)، افزایه Gradle Performance Monitoring را اضافه کنید:

    Kotlin

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id("com.android.application") version "7.3.0" apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id("com.google.gms.google-services") version "4.5.0" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "2.0.2" apply false
    }

    Groovy

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id 'com.android.application' version '7.3.0' apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id 'com.google.gms.google-services' version '4.5.0' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '2.0.2' apply false
    }
  2. در فایل Gradle واحد (سطح برنامه) (معمولاً <project>/<app-module>/build.gradle.kts یا <project>/<app-module>/build.gradle)، افزایه Gradle Performance Monitoring را اضافه کنید:

    Kotlin

    plugins {
        id("com.android.application")
    
        // Make sure that you have the Google services Gradle plugin
        id("com.google.gms.google-services")
    
        // Add the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf")
        ...
    }

    Groovy

    plugins {
        id 'com.android.application'
    
        // Make sure that you have the Google services Gradle plugin
        id 'com.google.gms.google-services'
    
        // Add the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf'
        ...
    }
  3. برنامه‌تان را بازهمگردانی کنید.

مرحله ۳: تولید رویدادهای عملکرد برای نمایش اولیه داده‌ها

وقتی «کیت توسعه نرم‌افزار» را باموفقیت به برنامه‌تان اضافه کنید، Firebase پردازش رویدادها را شروع می‌کند. اگر هنوز درحال توسعه محلی هستید، با برنامه‌تان تعامل برقرار کنید تا رویدادهایی برای جمع‌آوری و پردازش اولیه داده‌ها ایجاد شود.

  1. با جابه‌جا کردن برنامه‌تان بین پس‌زمینه و پیش‌زمینه برای چند بار، تعامل با برنامه‌تان ازطریق پیمایش در صفحه‌ها، و/یا راه‌اندازی درخواست‌های شبکه، رویداد ایجاد کنید.

  2. به داشبورد عملکرد کنسول Firebase بروید. باید داده‌های اولیه‌تان را ظرف چند دقیقه ببینید.

    اگر نمایش داده‌های اولیه خود را نمی‌بینید، نکات عیب‌یابی را مرور کنید.

مرحله ۴: (اختیاری) مشاهده پیام‌های گزارش برای رویدادهای عملکرد

  1. با افزودن عنصر <meta-data> به فایل AndroidManifest.xml برنامه‌تان، ثبت گزارش اشکال‌زدایی را برای Performance Monitoring در زمان ساخت فعال کنید، مانند:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. پیام‌های گزارش را برای پیدا کردن پیام‌های خطا بررسی کنید.

  3. ‫Performance Monitoring پیام‌های گزارش خود را با FirebasePerformance برچسب‌گذاری می‌کند. بااستفاده از فیلتر کردن logcat، می‌توانید با اجرای فرمان زیر، به‌طور خاص گزارش‌گیری درخواست شبکه HTTP/S و ردیابی مدت‌زمان را مشاهده کنید:

    adb logcat -s FirebasePerformance
  4. انواع گزارش‌های زیر را که نشان می‌دهد Performance Monitoring رویدادهای عملکرد را ثبت می‌کند بررسی کنید:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. روی نشانی وب کلیک کنید تا داده‌هایتان را در کنسول Firebase ببینید. ممکن است چند لحظه طول بکشد تا داده‌ها در داشبورد به‌روز شود.

اگر برنامه‌تان رویدادهای عملکرد را ثبت نمی‌کند، نکات عیب‌یابی را مرور کنید.

مرحله ۵: (اختیاری) افزودن پایش سفارشی برای کد خاص

برای نظارت بر داده‌های عملکرد مرتبط با کد خاصی در برنامه‌تان، می‌توانید ردگیری‌های کد سفارشی را ابزاربندی کنید.

با ردگیری کد سفارشی، می‌توانید مدت زمان لازم برای تکمیل یک تکلیف خاص یا مجموعه‌ای از تکالیف توسط برنامه‌تان را اندازه‌گیری کنید، مانند بار کردن مجموعه‌ای از تصاویر یا پرس‌وجو از پایگاه داده‌تان. سنجه پیش‌فرض برای ردگیری کد سفارشی مدت‌زمان آن است، اما می‌توانید سنجه‌های سفارشی نیز اضافه کنید، مثل بازدیدهای حافظه پنهان و هشدارهای حافظه.

در کدتان، ابتدا و انتهای ردگیری کد سفارشی را تعریف می‌کنید (و هر سنجه سفارشی دلخواهی را اضافه می‌کنید) و از میانای برنامه‌سازی کاربردی ارائه‌شده توسط Performance Monitoring SDK استفاده می‌کنید. برای برنامه‌های Android، همچنین می‌توانید مدت زمان روش‌های خاص را بااستفاده از حاشیه‌نویسی AddTrace@ پایش کنید.

برای کسب اطلاعات بیشتر درباره این ویژگی‌ها و نحوه افزودن آن‌ها به برنامه‌تان، به افزودن نظارت برای کد خاص مراجعه کنید.

مرحله ۶: برنامه‌تان را مستقر کنید و سپس نتایج را بازبینی کنید

پس‌از اینکه Performance Monitoring را بااستفاده از یک یا چند دستگاه آزمایشی اعتبارسنجی کردید، می‌توانید نسخه به‌روزشده برنامه‌تان را برای کاربران مستقر کنید.

می‌توانید داده‌های عملکرد را در داشبورد عملکرد در کنسول Firebase پایش کنید.

مشکلات شناخته شده

  • افزونه Performance Monitoring Gradle نسخه ۱.۱.۰ می‌تواند باعث عدم تطابق در وابستگی‌های Guava شود و درنتیجه خطای زیر رخ دهد:

    Error:Execution failed for task ':app:packageInstantRunResourcesDebug'.
    > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;

    اگر این خطا را دیدید، می‌توانید یکی از این کارها را بکنید:

    • افزایه Performance Monitoring را به نسخه ۱.۱.۱ یا جدیدتر ارتقا دهید (جدیدترین نسخه ۲.۰.۲ است).

    • خط وابستگی افزایه Performance Monitoring را در فایل Gradle سطح ریشه (سطح پروژه) (<project>/build.gradle.kts یا <project>/build.gradle) به‌صورت زیر جایگزین کنید:

      Kotlin

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath("com.google.firebase:perf-plugin:1.1.0") {
              exclude(group = "com.google.guava", module = "guava-jdk5")
          }
        }
      }

      Groovy

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath('com.google.firebase:perf-plugin:1.1.0') {
              exclude group: 'com.google.guava', module: 'guava-jdk5'
          }
        }
      }
  • Performance Monitoring اندازه کل بار مفید را برای درخواست‌های شبکه HTTP براساس مقدار تنظیم‌شده در سرصفحه طول محتوای HTTP گزارش می‌کند. این مقدار ممکن است همیشه دقیق نباشد.

  • ‫Performance Monitoring فقط از فرایند اصلی در برنامه‌های Android چندفرایندی پشتیبانی می‌کند.

مراحل بعدی