Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

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

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

ก่อนจะเริ่ม

หากคุณยังไม่ได้ เพิ่ม Firebase ในโครงการ Android ของคุณ

ขั้นตอนที่ 1 : เพิ่ม Performance Monitoring SDK ให้กับแอปของคุณ

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

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

    Java

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

    (ทางเลือก) เพิ่มการพึ่งพาไลบรารี 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:20.3.0'
    }
    

    Kotlin+KTX

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

    (ทางเลือก) เพิ่มการพึ่งพาไลบรารี 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-ktx:20.3.0'
    }
    

  2. คอมไพล์แอปของคุณใหม่

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

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

  1. ในไฟล์ Gradle ระดับรูท (ระดับโปรเจ็กต์) ของคุณ ( <project>/build.gradle ) ให้เพิ่มปลั๊กอิน Performance Monitoring Gradle เป็นการพึ่งพา buildscript:

    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.14'
    
            // Add the dependency for the Performance Monitoring Gradle plugin
            classpath 'com.google.firebase:perf-plugin:1.4.2'
        }
    }
  2. ในไฟล์ Gradle ของ โมดูล (ระดับแอป) ของคุณ (โดยปกติคือ <project>/<app-module>/build.gradle ) ให้เพิ่มปลั๊กอิน Performance Monitoring 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 : สร้างกิจกรรมประสิทธิภาพสำหรับการแสดงข้อมูลเริ่มต้น

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

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

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

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

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

  1. เปิดใช้งานการบันทึกการดีบักสำหรับการตรวจสอบประสิทธิภาพ ณ เวลาสร้างโดยเพิ่มองค์ประกอบ <meta-data> ลงในไฟล์ AndroidManifest.xml ของแอป เช่น:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. ตรวจสอบข้อความบันทึกเพื่อหาข้อความแสดงข้อผิดพลาด

  3. การตรวจสอบประสิทธิภาพจะแท็กข้อความบันทึกด้วย FirebasePerformance การใช้การกรอง logcat คุณสามารถดูการติดตามระยะเวลาและการบันทึกคำขอเครือข่าย HTTP/S โดยเฉพาะได้โดยการเรียกใช้คำสั่งต่อไปนี้:

    adb logcat -s FirebasePerformance
  4. ตรวจสอบบันทึกประเภทต่อไปนี้ซึ่งระบุว่าการตรวจสอบประสิทธิภาพกำลังบันทึกเหตุการณ์ด้านประสิทธิภาพ:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. คลิกที่ URL เพื่อดูข้อมูลของคุณในคอนโซล Firebase อาจใช้เวลาสักครู่ในการอัปเดตข้อมูลในแดชบอร์ด

หากแอปของคุณไม่บันทึกกิจกรรมด้านประสิทธิภาพ ให้อ่าน เคล็ดลับการแก้ปัญหา

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

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

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

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

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

ขั้นตอนที่ 6 : ปรับใช้แอปของคุณแล้วตรวจสอบผลลัพธ์

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

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

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

  • ปลั๊กอิน Performance Monitoring Gradle v1.1.0 อาจทำให้การขึ้นต่อกันของ Guava ไม่ตรงกัน ส่งผลให้เกิดข้อผิดพลาดดังต่อไปนี้:

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

    หากคุณเห็นข้อผิดพลาดนี้ คุณสามารถ:

    • อัปเกรดปลั๊กอินการตรวจสอบประสิทธิภาพเป็น v1.1.1 หรือใหม่กว่า (ล่าสุดคือ v1.4.2)

    • แทนที่บรรทัดการพึ่งพาปลั๊กอิน Performance Monitoring ในไฟล์ Gradle ระดับรูท (ระดับโปรเจ็กต์) ( 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 ค่านี้อาจไม่ถูกต้องเสมอไป

  • การตรวจสอบประสิทธิภาพรองรับเฉพาะกระบวนการหลักในแอป Android แบบหลายกระบวนการ

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