ก่อนจะเริ่ม
หากคุณยังไม่ได้ เพิ่ม Firebase ในโครงการ Apple ของคุณ
ขั้นตอนที่ 1 : เพิ่มการตรวจสอบประสิทธิภาพให้กับแอปของคุณ
หลังจากที่คุณได้เพิ่ม SDK การตรวจสอบประสิทธิภาพแล้ว Firebase จะเริ่มรวบรวมข้อมูลสำหรับ การแสดงผลหน้าจอ ของแอป ข้อมูลที่เกี่ยวข้องกับวงจรชีวิตของแอปของคุณ (เช่น เวลาเริ่มต้นแอป ) และข้อมูลสำหรับ คำขอเครือข่าย HTTP/S โดยอัตโนมัติ
ใช้ Swift Package Manager เพื่อติดตั้งและจัดการการขึ้นต่อกันของ Firebase
- ใน Xcode เมื่อโปรเจ็กต์แอปของคุณเปิดอยู่ ให้ไปที่ File > Add Packages
- เมื่อได้รับแจ้ง ให้เพิ่มที่เก็บ SDK ของแพลตฟอร์ม Firebase Apple:
- เลือกไลบรารีการตรวจสอบประสิทธิภาพ
- เมื่อเสร็จแล้ว Xcode จะเริ่มแก้ไขและดาวน์โหลดการพึ่งพาของคุณในพื้นหลังโดยอัตโนมัติ
https://github.com/firebase/firebase-ios-sdk
ถัดไป กำหนดค่าโมดูล Firebase:
- นำเข้าโมดูล
FirebaseCore
ในUIApplicationDelegate
ของคุณ รวมถึง โมดูล Firebase อื่นๆ ที่ผู้รับมอบสิทธิ์แอปของคุณใช้ ตัวอย่างเช่น ในการใช้ Cloud Firestore และการตรวจสอบสิทธิ์:Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
วัตถุประสงค์-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- กำหนดค่าอินสแตนซ์ที่ใช้ร่วมกันของ
FirebaseApp
โดยทั่วไปในเครื่องมือเริ่มต้นของApp
ปหรือวิธีการของapplication(_:didFinishLaunchingWithOptions:)
ของแอปหรือผู้รับมอบสิทธิ์แอป:Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
วัตถุประสงค์-C
// Use Firebase library to configure APIs [FIRApp configure];
- คอมไพล์แอปของคุณใหม่
ขั้นตอนที่ 2 : สร้างเหตุการณ์ประสิทธิภาพสำหรับการแสดงข้อมูลเริ่มต้น
Firebase เริ่มประมวลผลเหตุการณ์เมื่อคุณเพิ่ม SDK ลงในแอปของคุณสำเร็จ หากคุณยังคงพัฒนาในพื้นที่ ให้โต้ตอบกับแอปของคุณเพื่อสร้างกิจกรรมสำหรับการเก็บรวบรวมและประมวลผลข้อมูลเบื้องต้น
พัฒนาแอปของคุณต่อไปโดยใช้เครื่องจำลองหรืออุปกรณ์ทดสอบ
สร้างเหตุการณ์โดยสลับแอปของคุณไปมาระหว่างพื้นหลังและเบื้องหน้าหลายๆ ครั้ง โต้ตอบกับแอปของคุณโดยการนำทางผ่านหน้าจอต่างๆ และ/หรือเรียกคำขอของเครือข่าย
ไปที่ แดชบอร์ด ประสิทธิภาพ ของคอนโซล Firebase คุณควรเห็นข้อมูลเริ่มต้นของคุณแสดงขึ้นภายในไม่กี่นาที
หากคุณไม่เห็นการแสดงข้อมูลเริ่มต้นของคุณ ให้อ่านคำ แนะนำในการแก้ปัญหา
ขั้นตอนที่ 3 : (ไม่บังคับ) ดูข้อความบันทึกสำหรับกิจกรรมด้านประสิทธิภาพ
เปิดใช้งานการบันทึกการดีบักดังนี้:
- ใน Xcode (ขั้นต่ำ v13.3.1) ให้เลือก Product > Scheme > Edit scheme
- เลือก เรียกใช้ จากเมนูด้านซ้าย จากนั้นเลือกแท็บ อาร์กิวเมนต์
- ในส่วน Arguments Passed on Launch ให้เพิ่ม
-FIRDebugEnabled
ตรวจสอบข้อความบันทึกเพื่อหาข้อความแสดงข้อผิดพลาด
การตรวจสอบประสิทธิภาพจะแท็กข้อความบันทึกด้วย
Firebase/Performance
เพื่อให้คุณสามารถกรองข้อความบันทึกได้ตรวจสอบบันทึกประเภทต่อไปนี้ซึ่งระบุว่าการตรวจสอบประสิทธิภาพกำลังบันทึกเหตุการณ์ด้านประสิทธิภาพ:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
คลิกที่ URL เพื่อดูข้อมูลของคุณในคอนโซล Firebase อาจใช้เวลาสักครู่ในการอัปเดตข้อมูลในแดชบอร์ด
หากแอปของคุณไม่บันทึกกิจกรรมด้านประสิทธิภาพ ให้อ่าน เคล็ดลับการแก้ปัญหา
ขั้นตอนที่ 4 : (ไม่บังคับ) เพิ่มการตรวจสอบแบบกำหนดเองสำหรับรหัสเฉพาะ
ในการตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดเฉพาะในแอปของคุณ คุณสามารถใช้เครื่องมือ ติดตามโค้ดที่กำหนดเอง
ด้วยการติดตามโค้ดแบบกำหนดเอง คุณสามารถวัดได้ว่าแอปของคุณใช้เวลานานเท่าใดในการทำงานเฉพาะหรือชุดของงาน เช่น การโหลดชุดของรูปภาพ หรือการสืบค้นฐานข้อมูลของคุณ เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กำหนดเองคือระยะเวลา แต่คุณยังสามารถเพิ่มเมตริกที่กำหนดเองได้ เช่น จำนวนการแคชและการเตือนหน่วยความจำ
ในโค้ดของคุณ คุณต้องกำหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กำหนดเอง (และเพิ่มเมตริกที่กำหนดเองที่ต้องการ) โดยใช้ API ที่จัดเตรียมโดย Performance Monitoring SDK
ไปที่ เพิ่มการตรวจสอบโค้ดเฉพาะ เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับคุณลักษณะเหล่านี้และวิธีเพิ่มลงในแอปของคุณ
ขั้นตอนที่ 5 : ทำให้แอปของคุณใช้งานได้แล้วตรวจสอบผลลัพธ์
หลังจากที่คุณได้ตรวจสอบการตรวจสอบประสิทธิภาพโดยใช้โปรแกรมจำลอง Xcode และอุปกรณ์ทดสอบหนึ่งเครื่องขึ้นไป คุณสามารถปรับใช้แอปเวอร์ชันที่อัปเดตกับผู้ใช้ของคุณได้
คุณตรวจสอบข้อมูลประสิทธิภาพได้ใน แดชบอร์ด ประสิทธิภาพ ของคอนโซล Firebase
ปัญหาที่ทราบ
- การตรวจสอบประสิทธิภาพมีปัญหาความเข้ากันได้ที่ทราบกับ GTMSQLite เราขอแนะนำไม่ให้ใช้การตรวจสอบประสิทธิภาพกับแอปที่ใช้ GTMSQLite
- วิธีการหมุนวนหลังจากเรียก
FirebaseApp.configure()
อาจรบกวนการทำงานของ SDK การตรวจสอบประสิทธิภาพ - ปัญหาที่ทราบเกี่ยวกับตัวจำลอง iOS 8.0-8.2 ทำให้การตรวจสอบประสิทธิภาพไม่สามารถบันทึกเหตุการณ์ด้านประสิทธิภาพได้ ปัญหาเหล่านี้ได้รับการแก้ไขแล้วใน iOS 8.3 Simulator และเวอร์ชันที่ใหม่กว่า
- การเชื่อมต่อที่สร้างโดยใช้
backgroundSessionConfiguration
ของ NSURLSession จะแสดงเวลาการเชื่อมต่อนานกว่าที่คาดไว้ การเชื่อมต่อเหล่านี้ดำเนินการนอกกระบวนการและกำหนดเวลาสะท้อนถึงเหตุการณ์การโทรกลับในกระบวนการ
ขั้นตอนถัดไป
ตรวจสอบและเรียกใช้ ตัวอย่างโค้ดของ Performance Monitoring iOS บน GitHub
เรียนรู้เพิ่มเติมเกี่ยวกับข้อมูลที่รวบรวมโดยอัตโนมัติโดยการตรวจสอบประสิทธิภาพ:
- ข้อมูลที่เกี่ยวข้องกับวงจรชีวิตของ แอป เช่น เวลาเริ่มต้นแอป
- ข้อมูลสำหรับ การแสดงผลหน้าจอ ในแอปของคุณ
- ข้อมูลสำหรับ คำขอเครือข่าย HTTP/S ที่ออกโดยแอปของคุณ
ดู ติดตาม และกรอง ข้อมูลประสิทธิภาพของคุณในคอนโซล Firebase
เพิ่มการตรวจสอบสำหรับงานหรือเวิร์กโฟลว์เฉพาะในแอปของคุณโดย ใช้เครื่องมือติดตามโค้ดที่กำหนดเอง