了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Android এর জন্য পারফরম্যান্স মনিটরিং দিয়ে শুরু করুন

তুমি শুরু করার আগে

যদি আপনি ইতিমধ্যেই না করে থাকেন তাহলে আপনার Android প্রকল্পে Firebase যোগ করুন

ধাপ 1 : আপনার অ্যাপে পারফরম্যান্স মনিটরিং SDK যোগ করুন

আপনি পারফরম্যান্স মনিটরিং SDK যোগ করার পরে, Firebase স্বয়ংক্রিয়ভাবে আপনার অ্যাপের স্ক্রীন রেন্ডারিং এবং আপনার অ্যাপের জীবনচক্রের সাথে সম্পর্কিত ডেটা সংগ্রহ করা শুরু করে (যেমন অ্যাপ শুরুর সময় )। নেটওয়ার্ক অনুরোধগুলি নিরীক্ষণ করতে Firebase সক্ষম করতে, আপনাকে অবশ্যই পারফরম্যান্স মনিটরিং গ্রেডল প্লাগইন (পরবর্তী ধাপ) যোগ করতে হবে।

  1. আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত <project>/<app-module>/build.gradle ), পারফরম্যান্স মনিটরিং অ্যান্ড্রয়েড লাইব্রেরির জন্য নির্ভরতা যোগ করুন। আমরা লাইব্রেরি সংস্করণ নিয়ন্ত্রণ করতে Firebase Android BoM ব্যবহার করার পরামর্শ দিই।

    Kotlin+KTX

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:32.1.0')
    
        // 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-ktx'
    }
    

    Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

    (বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা যোগ করুন

    আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি 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-ktx:20.3.2'
    }
    

    Java

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:32.1.0')
    
        // 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 লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

    (বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা যোগ করুন

    আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি 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:20.3.2'
    }
    

  2. আপনার অ্যাপ্লিকেশন পুনরায় কম্পাইল.

ধাপ 2 : আপনার অ্যাপে পারফরম্যান্স মনিটরিং গ্রেডল প্লাগইন যোগ করুন

আপনি পারফরমেন্স মনিটরিং গ্রেডল প্লাগইন যোগ করার পরে, Firebase স্বয়ংক্রিয়ভাবে HTTP/S নেটওয়ার্ক অনুরোধের জন্য ডেটা সংগ্রহ করা শুরু করে। প্লাগইনটি আপনাকে @AddTrace টীকা ব্যবহার করে কাস্টম কোড ট্রেস করতে সক্ষম করে।

  1. আপনার রুট-লেভেলে (প্রজেক্ট-লেভেল) গ্রেডল ফাইলে ( <project>/build.gradle ), পারফরম্যান্স মনিটরিং গ্রেডল প্লাগইন একটি বিল্ডস্ক্রিপ্ট নির্ভরতা হিসেবে যোগ করুন:

    buildscript {
        repositories {
          // Make sure that you have the following two repositories
          google()  // Google's Maven repository
          mavenCentral()  // Maven Central repository
        }
    
        dependencies {
            ...
            // To benefit from the latest Performance Monitoring plugin features,
            // update your Android Gradle plugin dependency to at least v3.4.0
            classpath 'com.android.tools.build:gradle:7.2.0'
    
            // Make sure that you have the Google services Gradle plugin dependency
            classpath 'com.google.gms:google-services:4.3.15'
    
            // Add the dependency for the Performance Monitoring Gradle plugin
            classpath 'com.google.firebase:perf-plugin:1.4.2'
        }
    }
  2. আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত <project>/<app-module>/build.gradle ), পারফরম্যান্স মনিটরিং গ্রেডল প্লাগইন যোগ করুন:

    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. আপনার অ্যাপ্লিকেশন পুনরায় কম্পাইল.

ধাপ 3 : প্রাথমিক ডেটা প্রদর্শনের জন্য কর্মক্ষমতা ইভেন্ট তৈরি করুন

আপনি সফলভাবে আপনার অ্যাপে SDK যোগ করলে Firebase ইভেন্টগুলি প্রক্রিয়া করা শুরু করে। আপনি যদি এখনও স্থানীয়ভাবে বিকাশ করছেন, প্রাথমিক ডেটা সংগ্রহ এবং প্রক্রিয়াকরণের জন্য ইভেন্ট তৈরি করতে আপনার অ্যাপের সাথে যোগাযোগ করুন।

  1. আপনার অ্যাপকে ব্যাকগ্রাউন্ড এবং ফোরগ্রাউন্ডের মধ্যে বেশ কয়েকবার স্যুইচ করে, স্ক্রিন জুড়ে নেভিগেট করে আপনার অ্যাপের সাথে ইন্টারঅ্যাক্ট করে এবং/অথবা নেটওয়ার্ক অনুরোধগুলি ট্রিগার করে ইভেন্ট তৈরি করুন।

  2. Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে যান। আপনি কয়েক মিনিটের মধ্যে আপনার প্রাথমিক তথ্য প্রদর্শন দেখতে হবে.

    আপনি যদি আপনার প্রাথমিক ডেটার একটি প্রদর্শন দেখতে না পান, তাহলে সমস্যা সমাধানের টিপস পর্যালোচনা করুন৷

ধাপ 4 : (ঐচ্ছিক) কর্মক্ষমতা ইভেন্টের জন্য লগ বার্তা দেখুন

  1. আপনার অ্যাপের AndroidManifest.xml ফাইলে একটি <meta-data> উপাদান যোগ করে বিল্ড টাইমে পারফরম্যান্স মনিটরিংয়ের জন্য ডিবাগ লগিং সক্ষম করুন, যেমন:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. কোনো ত্রুটি বার্তা জন্য আপনার লগ বার্তা পরীক্ষা করুন.

  3. পারফরম্যান্স মনিটরিং এর লগ মেসেজগুলিকে FirebasePerformance দিয়ে ট্যাগ করে। লগক্যাট ফিল্টারিং ব্যবহার করে, আপনি বিশেষভাবে নিম্নলিখিত কমান্ডটি চালিয়ে সময়কাল ট্রেস এবং HTTP/S নেটওয়ার্ক অনুরোধ লগিং দেখতে পারেন:

    adb logcat -s FirebasePerformance
  4. নিম্নলিখিত ধরনের লগগুলির জন্য পরীক্ষা করুন যা নির্দেশ করে যে পারফরম্যান্স মনিটরিং পারফরম্যান্স ইভেন্টগুলি লগিং করছে:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Firebase কনসোলে আপনার ডেটা দেখতে URL-এ ক্লিক করুন। ড্যাশবোর্ডে ডেটা আপডেট হতে কয়েক মুহূর্ত সময় লাগতে পারে।

যদি আপনার অ্যাপ পারফরম্যান্স ইভেন্টগুলি লগিং না করে, তাহলে সমস্যা সমাধানের টিপস পর্যালোচনা করুন৷

ধাপ 5 : (ঐচ্ছিক) নির্দিষ্ট কোডের জন্য কাস্টম মনিটরিং যোগ করুন

আপনার অ্যাপে নির্দিষ্ট কোডের সাথে যুক্ত কর্মক্ষমতা ডেটা নিরীক্ষণ করতে, আপনি কাস্টম কোড ট্রেস যন্ত্র করতে পারেন।

একটি কাস্টম কোড ট্রেস দিয়ে, আপনি পরিমাপ করতে পারেন যে আপনার অ্যাপটি একটি নির্দিষ্ট কাজ বা কাজের সেট সম্পূর্ণ করতে কতক্ষণ সময় নেয়, যেমন ছবির একটি সেট লোড করা বা আপনার ডাটাবেস অনুসন্ধান করা। একটি কাস্টম কোড ট্রেসের জন্য ডিফল্ট মেট্রিক হল এর সময়কাল, তবে আপনি কাস্টম মেট্রিক্সও যোগ করতে পারেন, যেমন ক্যাশে হিট এবং মেমরি সতর্কতা।

আপনার কোডে, আপনি পারফরম্যান্স মনিটরিং SDK দ্বারা প্রদত্ত API ব্যবহার করে একটি কাস্টম কোড ট্রেসের শুরু এবং শেষ (এবং যেকোনো পছন্দসই কাস্টম মেট্রিক্স যোগ করুন) সংজ্ঞায়িত করেন। Android অ্যাপগুলির জন্য, আপনি @AddTrace টীকা ব্যবহার করে নির্দিষ্ট পদ্ধতির সময়কাল নিরীক্ষণ করতে পারেন।

এই বৈশিষ্ট্যগুলি সম্পর্কে আরও জানতে এবং কীভাবে সেগুলিকে আপনার অ্যাপে যুক্ত করবেন তা জানতে নির্দিষ্ট কোডের জন্য নিরীক্ষণ যোগ করুন- এ যান৷

ধাপ 6 : আপনার অ্যাপ স্থাপন করুন তারপর ফলাফল পর্যালোচনা করুন

আপনি এক বা একাধিক টেস্ট ডিভাইস ব্যবহার করে পারফরম্যান্স মনিটরিং যাচাই করার পরে, আপনি আপনার ব্যবহারকারীদের কাছে আপনার অ্যাপের আপডেট করা সংস্করণ স্থাপন করতে পারেন।

আপনি Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে কর্মক্ষমতা ডেটা নিরীক্ষণ করতে পারেন।

জ্ঞাত সমস্যা

  • পারফরম্যান্স মনিটরিং গ্রেডল প্লাগইন v1.1.0 গুয়াভা নির্ভরতাগুলির মধ্যে একটি অমিল সৃষ্টি করতে পারে, যার ফলে নিম্নলিখিত ত্রুটি দেখা দিতে পারে:

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

    আপনি যদি এই ত্রুটিটি দেখতে পান তবে আপনি এটি করতে পারেন:

    • পারফরম্যান্স মনিটরিং প্লাগইনটিকে v1.1.1 বা পরবর্তীতে আপগ্রেড করুন (সবচেয়ে সাম্প্রতিক v1.4.2)।

    • আপনার রুট-লেভেল (প্রকল্প-স্তরের) গ্রেডল ফাইলে ( build.gradle ) পারফরম্যান্স মনিটরিং প্লাগইন নির্ভরতা লাইনটি নিম্নরূপ প্রতিস্থাপন করুন:

      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'
          }
        }
      }
      
  • পারফরম্যান্স মনিটরিং HTTP বিষয়বস্তু-দৈর্ঘ্য শিরোনামে সেট করা মানের উপর ভিত্তি করে HTTP নেটওয়ার্ক অনুরোধের জন্য মোট পেলোড আকারের প্রতিবেদন করে। এই মান সবসময় সঠিক নাও হতে পারে।

  • পারফরম্যান্স মনিটরিং শুধুমাত্র মাল্টি-প্রসেস অ্যান্ড্রয়েড অ্যাপে প্রধান প্রক্রিয়া সমর্থন করে।

পরবর্তী পদক্ষেপ