เริ่มต้นใช้งานการตรวจสอบประสิทธิภาพสำหรับ Android

ก่อนเริ่มต้น

หากคุณยังไม่ได้ดำเนินการ เพิ่ม Firebase ลงในโปรเจ็กต์ Android

ขั้นตอนที่ 1: เพิ่ม SDK ของ Performance Monitoring ลงในแอป

หลังจากเพิ่ม Performance Monitoring SDK แล้ว Firebase จะเริ่มรวบรวมโดยอัตโนมัติ สำหรับการแสดงผลหน้าจอและข้อมูลของแอป เกี่ยวข้องกับวงจรของแอป (เช่น เวลาเริ่มต้นของแอป) ถึง เปิดใช้ Firebase เพื่อตรวจสอบคำขอเครือข่าย คุณต้องเพิ่ม Performance Monitoring ด้วย ปลั๊กอิน Gradle (ขั้นตอนถัดไป)

  1. ในไฟล์ Gradle ของโมดูล (ระดับแอป) (ปกติ <project>/<app-module>/build.gradle.kts หรือ <project>/<app-module>/build.gradle) เพิ่มทรัพยากร Dependency สำหรับไลบรารี Performance Monitoring สำหรับ Android เราขอแนะนำให้ใช้ Firebase Android BoM เพื่อควบคุมการกำหนดเวอร์ชันไลบรารี

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:33.1.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 เวอร์ชันที่เข้ากันได้เสมอ

    (ทางเลือก) เพิ่มทรัพยากร Dependency ของไลบรารี Firebase โดยไม่ใช้ BoM

    หากเลือกไม่ใช้ Firebase BoM คุณต้องระบุเวอร์ชันไลบรารี Firebase แต่ละเวอร์ชัน ในบรรทัดทรัพยากร Dependency

    โปรดทราบว่าหากคุณใช้ไลบรารี 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:21.0.1")
    }
    
    หากกำลังมองหาโมดูลไลบรารีสำหรับ Kotlin โดยเฉพาะ จะเริ่มต้นใน ตุลาคม 2023 (Firebase BoM 32.5.0) ทั้งนักพัฒนา Kotlin และ Java สามารถ ขึ้นอยู่กับโมดูลไลบรารีหลัก (ดูรายละเอียดได้ที่ คําถามที่พบบ่อยเกี่ยวกับโครงการริเริ่มนี้)

  2. คอมไพล์แอปอีกครั้ง

ขั้นตอนที่ 2: เพิ่มปลั๊กอิน Gradle ขนาด Performance Monitoring ลงในแอป

หลังจากเพิ่มปลั๊กอิน Gradle Performance Monitoring แล้ว Firebase จะเริ่มต้นโดยอัตโนมัติ กำลังรวบรวมข้อมูลสำหรับ คำขอเครือข่าย HTTP/S ปลั๊กอินยังช่วยให้คุณใช้การติดตามโค้ดที่กำหนดเอง คำอธิบายประกอบ@AddTrace

  1. ในไฟล์ Gradle ระดับราก (ระดับโปรเจ็กต์) (<project>/build.gradle.kts หรือ <project>/build.gradle) ให้เพิ่ม ปลั๊กอิน Performance Monitoring Gradle:

    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.4.2" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "1.4.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.4.2' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '1.4.2' apply false
    }
    
  2. ในไฟล์ Gradle ของโมดูล (ระดับแอป) (ปกติ <project>/<app-module>/build.gradle.kts หรือ <project>/<app-module>/build.gradle) ให้เพิ่ม Performance Monitoring ปลั๊กอิน 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 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. คอมไพล์แอปอีกครั้ง

ขั้นตอนที่ 3: สร้างเหตุการณ์ด้านประสิทธิภาพเพื่อแสดงข้อมูลเริ่มต้น

Firebase จะเริ่มประมวลผลเหตุการณ์เมื่อคุณเพิ่ม SDK ลงใน แอป หากคุณยังพัฒนาในเครื่อง ให้โต้ตอบกับแอปเพื่อสร้าง เหตุการณ์สำหรับการเก็บรวบรวมและประมวลผลข้อมูลเริ่มต้น

  1. สร้างเหตุการณ์โดยสลับแอประหว่างเบื้องหลังกับที่ทำงานอยู่เบื้องหน้า หลายๆ ครั้ง การโต้ตอบกับแอปด้วยการไปยังหน้าจอต่างๆ และ/หรือการทริกเกอร์คำขอเครือข่าย

  2. ไปที่หน้าแดชบอร์ดประสิทธิภาพ ของคอนโซล Firebase คุณควรจะเห็นข้อมูลเริ่มต้นแสดงอยู่ภายใน ภายในไม่กี่นาที

    หากคุณไม่เห็นการแสดงข้อมูลเริ่มต้น ให้ตรวจสอบการแก้ปัญหา เคล็ดลับ

ขั้นตอนที่ 4: (ไม่บังคับ) ดูข้อความบันทึกสำหรับเหตุการณ์ด้านประสิทธิภาพ

  1. เปิดใช้การบันทึกการแก้ไขข้อบกพร่องสำหรับ Performance Monitoring ในเวลาบิลด์โดยเพิ่ม <meta-data> ลงในไฟล์ AndroidManifest.xml ของแอป เช่น

    <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. คลิก URL เพื่อดูข้อมูลในคอนโซล Firebase อาจใช้เวลา 2-3 รอให้ข้อมูลอัปเดตในหน้าแดชบอร์ด

หากแอปไม่บันทึกเหตุการณ์ด้านประสิทธิภาพ โปรดดูการแก้ปัญหา เคล็ดลับ

ขั้นตอนที่ 5: (ไม่บังคับ) เพิ่มการตรวจสอบที่กําหนดเองสําหรับโค้ดที่ต้องการ

วิธีตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดที่ต้องการในแอป การติดตามโค้ดที่กำหนดเอง

คุณสามารถวัดระยะเวลาที่แอปใช้ในการดำเนินการด้วยการติดตามโค้ดที่กำหนดเอง งานหรือชุดงานที่เฉพาะเจาะจง เช่น การโหลดชุดรูปภาพหรือการค้นหา ฐานข้อมูลของคุณ เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กำหนดเองคือระยะเวลาของเมตริก แต่ คุณยังสามารถเพิ่มเมตริกที่กำหนดเอง เช่น แคช Hit และคำเตือนหน่วยความจำได้

ในโค้ดของคุณ คุณจะต้องกำหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กำหนดเอง (และ เพิ่มเมตริกที่กำหนดเองที่ต้องการ) โดยใช้ API ที่ Performance Monitoring SDK มีให้ สำหรับแอป Android คุณสามารถตรวจสอบระยะเวลาของ วิธีการที่เฉพาะเจาะจงโดยใช้ คำอธิบายประกอบ@AddTrace

ไปที่หัวข้อเพิ่มการตรวจสอบสำหรับโค้ดที่ต้องการ เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์เหล่านี้ รวมถึงวิธีเพิ่มฟีเจอร์ลงในแอป

ขั้นตอนที่ 6: ทำให้แอปใช้งานได้ จากนั้นตรวจสอบผลลัพธ์

หลังจากตรวจสอบ Performance Monitoring โดยใช้อุปกรณ์ทดสอบอย่างน้อย 1 เครื่องแล้ว คุณจะทำสิ่งต่อไปนี้ได้ ทำให้ผู้ใช้ของคุณใช้งานแอปเวอร์ชันที่อัปเดตแล้วได้

คุณตรวจสอบข้อมูลประสิทธิภาพได้ใน แดชบอร์ดประสิทธิภาพ ของคอนโซล Firebase

ปัญหาที่ทราบ

  • ปลั๊กอิน Gradle ของ Performance Monitoring เวอร์ชัน 1.1.0 อาจทำให้ภาษา Guava ไม่ตรงกัน Dependencies ที่ทำให้เกิดข้อผิดพลาดต่อไปนี้

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

    หากเห็นข้อผิดพลาดนี้ คุณอาจทำอย่างใดอย่างหนึ่งต่อไปนี้

    • อัปเกรดปลั๊กอิน Performance Monitoring เป็น v1.1.1 หรือใหม่กว่า (เวอร์ชันล่าสุดคือ v1.4.2)

    • แทนที่บรรทัดการอ้างอิงปลั๊กอิน 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 ที่มีการประมวลผลหลายรายการ

ขั้นตอนถัดไป