ก่อนเริ่มต้น
หากคุณยังไม่ได้ดำเนินการ เพิ่ม Firebase ลงในโปรเจ็กต์ Android
ขั้นตอนที่ 1: เพิ่ม Performance Monitoring SDK ลงในแอป
หลังจากที่คุณเพิ่ม Performance Monitoring SDK แล้ว Firebase จะเริ่มรวบรวมโดยอัตโนมัติ ข้อมูลสำหรับการแสดงผลหน้าจอและข้อมูลของแอป เกี่ยวข้องกับวงจรของแอป (เช่น เวลาเริ่มต้นของแอป) ถึง เปิดใช้ Firebase เพื่อตรวจสอบคำขอเครือข่าย คุณต้องเพิ่มการตรวจสอบประสิทธิภาพด้วย ปลั๊กอิน Gradle (ขั้นตอนถัดไป)
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (ปกติ
<project>/<app-module>/build.gradle.kts
หรือ<project>/<app-module>/build.gradle
) เพิ่มทรัพยากร Dependency สำหรับไลบรารีการตรวจสอบประสิทธิภาพสําหรับ Android เราขอแนะนำให้ใช้ BoM ของ Firebase Android เพื่อควบคุมการกำหนดเวอร์ชันไลบรารี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") }
คอมไพล์แอปอีกครั้ง
ขั้นตอนที่ 2: เพิ่มปลั๊กอิน Gradle การตรวจสอบประสิทธิภาพลงในแอป
หลังจากเพิ่มปลั๊กอิน Gradle การตรวจสอบประสิทธิภาพแล้ว Firebase จะเริ่มต้นโดยอัตโนมัติ กำลังรวบรวมข้อมูลสำหรับ คำขอเครือข่าย HTTP/S ปลั๊กอินยังช่วยให้คุณใช้การติดตามโค้ดที่กำหนดเอง คำอธิบายประกอบ@AddTrace
ในไฟล์ 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.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 }
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (ปกติ
<project>/<app-module>/build.gradle.kts
หรือ<project>/<app-module>/build.gradle
) เพิ่มการตรวจสอบประสิทธิภาพ ปลั๊กอิน 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: สร้างเหตุการณ์ด้านประสิทธิภาพเพื่อแสดงข้อมูลเริ่มต้น
Firebase จะเริ่มประมวลผลเหตุการณ์เมื่อคุณเพิ่ม SDK ลงใน แอป หากคุณยังพัฒนาในเครื่อง ให้โต้ตอบกับแอปเพื่อสร้าง เหตุการณ์สำหรับการเก็บรวบรวมและประมวลผลข้อมูลเริ่มต้น
สร้างเหตุการณ์โดยสลับแอประหว่างเบื้องหลังกับที่ทำงานอยู่เบื้องหน้า หลายๆ ครั้ง การโต้ตอบกับแอปด้วยการไปยังหน้าจอต่างๆ และ/หรือการทริกเกอร์คำขอเครือข่าย
ไปที่หน้าแดชบอร์ดประสิทธิภาพ ของคอนโซล Firebase คุณควรจะเห็นข้อมูลเริ่มต้นแสดงอยู่ภายใน ภายในไม่กี่นาที
หากคุณไม่เห็นการแสดงข้อมูลเริ่มต้น ให้ตรวจสอบการแก้ปัญหา เคล็ดลับ
ขั้นตอนที่ 4: (ไม่บังคับ) ดูข้อความบันทึกสำหรับเหตุการณ์ด้านประสิทธิภาพ
เปิดใช้การบันทึกการแก้ไขข้อบกพร่องสำหรับการตรวจสอบประสิทธิภาพในเวลาบิลด์โดยเพิ่ม
<meta-data>
ลงในไฟล์AndroidManifest.xml
ของแอป เช่น<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
ตรวจสอบข้อความบันทึกของคุณเพื่อหาข้อความแสดงข้อผิดพลาด
การตรวจสอบประสิทธิภาพจะติดแท็กข้อความบันทึกด้วย
FirebasePerformance
การใช้ Logcat การกรอง คุณสามารถดูการติดตามระยะเวลาและเครือข่าย HTTP/S ขอให้บันทึกโดยเรียกใช้คำสั่งต่อไปนี้adb logcat -s FirebasePerformance
ตรวจหาบันทึกประเภทต่อไปนี้ซึ่งระบุว่าการตรวจสอบประสิทธิภาพ บันทึกเหตุการณ์ด้านประสิทธิภาพ:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
คลิก URL เพื่อดูข้อมูลในคอนโซล Firebase อาจใช้เวลา 2-3 รอให้ข้อมูลอัปเดตในหน้าแดชบอร์ด
หากแอปไม่บันทึกเหตุการณ์ด้านประสิทธิภาพ โปรดดูการแก้ปัญหา เคล็ดลับ
ขั้นตอนที่ 5: (ไม่บังคับ) เพิ่มการตรวจสอบที่กําหนดเองสําหรับโค้ดที่ต้องการ
วิธีตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดที่ต้องการในแอป การติดตามโค้ดที่กำหนดเอง
คุณสามารถวัดระยะเวลาที่แอปใช้ในการดำเนินการด้วยการติดตามโค้ดที่กำหนดเอง งานหรือชุดงานที่เฉพาะเจาะจง เช่น การโหลดชุดรูปภาพหรือการค้นหา ฐานข้อมูลของคุณ เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กำหนดเองคือระยะเวลาของเมตริก แต่ คุณยังสามารถเพิ่มเมตริกที่กำหนดเอง เช่น แคช Hit และคำเตือนหน่วยความจำได้
ในโค้ดของคุณ คุณจะต้องกำหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กำหนดเอง (และ เพิ่มเมตริกที่กําหนดเองที่ต้องการ) โดยใช้ API ที่มาจาก Performance Monitoring SDK สำหรับแอป Android คุณสามารถตรวจสอบระยะเวลาของ วิธีการที่เฉพาะเจาะจงโดยใช้ คำอธิบายประกอบ@AddTrace
ไปที่หัวข้อเพิ่มการตรวจสอบสำหรับโค้ดที่ต้องการ เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์เหล่านี้ รวมถึงวิธีเพิ่มฟีเจอร์ลงในแอป
ขั้นตอนที่ 6: ทำให้แอปใช้งานได้ จากนั้นตรวจสอบผลลัพธ์
หลังจากที่คุณตรวจสอบประสิทธิภาพการตรวจสอบโดยใช้อุปกรณ์ทดสอบอย่างน้อย 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;
หากเห็นข้อผิดพลาดนี้ คุณอาจทำอย่างใดอย่างหนึ่งต่อไปนี้
อัปเกรดปลั๊กอินการตรวจสอบประสิทธิภาพเป็น 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' } } }
การตรวจสอบประสิทธิภาพจะรายงานขนาดเพย์โหลดทั้งหมดสำหรับคำขอเครือข่าย HTTP โดยอิงจาก เกี่ยวกับค่าที่ตั้งไว้ในส่วนหัวความยาวของเนื้อหา HTTP ค่านี้อาจไม่ ถูกต้องอยู่เสมอ
การตรวจสอบประสิทธิภาพรองรับเฉพาะกระบวนการหลักในแอป Android ที่มีการประมวลผลหลายรายการเท่านั้น
ขั้นตอนถัดไป
ตรวจสอบและเรียกใช้ ตัวอย่างโค้ดสำหรับ Android สำหรับการตรวจสอบประสิทธิภาพใน GitHub
ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อมูลที่การตรวจสอบประสิทธิภาพรวบรวมโดยอัตโนมัติ
- ข้อมูลที่เกี่ยวข้องกับวงจรของแอป เช่น เวลาเริ่มต้นของแอป
- ข้อมูลสำหรับการแสดงผลหน้าจอในแอป
- ข้อมูลสำหรับคำขอเครือข่าย HTTP/S ที่ออก ตามแอปของคุณ
ดู ติดตาม และกรอง ข้อมูลประสิทธิภาพในคอนโซล Firebase
เพิ่มการตรวจสอบสำหรับงานหรือเวิร์กโฟลว์ที่เฉพาะเจาะจงในแอปโดยทำดังนี้ การใช้เครื่องมือการติดตามโค้ดที่กำหนดเอง