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

ก่อนที่คุณจะเริ่ม

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

ขั้นตอนที่ 1 : เพิ่มการตรวจสอบประสิทธิภาพให้กับแอปของคุณ

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

ใช้ Swift Package Manager เพื่อติดตั้งและจัดการการพึ่งพา Firebase

  1. ใน Xcode เมื่อโปรเจ็กต์แอปของคุณเปิดอยู่ ให้ไปที่ File > Add Package
  2. เมื่อได้รับแจ้ง ให้เพิ่มพื้นที่เก็บข้อมูล SDK แพลตฟอร์ม Firebase Apple:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. เลือกไลบรารีการตรวจสอบประสิทธิภาพ
  5. เพิ่มแฟล็ก -ObjC ไปยังส่วน Other Linker Flags ของการตั้งค่า build ของเป้าหมายของคุณ
  6. เมื่อเสร็จแล้ว Xcode จะเริ่มแก้ไขและดาวน์โหลดการอ้างอิงของคุณโดยอัตโนมัติในเบื้องหลัง

จากนั้นกำหนดค่าโมดูล Firebase:

  1. นำเข้าโมดูล FirebaseCore ใน UIApplicationDelegate ของคุณ รวมถึง โมดูล Firebase อื่นๆ ที่แอปของคุณมอบหมายใช้ ตัวอย่างเช่น หากต้องการใช้ Cloud Firestore และการตรวจสอบสิทธิ์ ให้ทำดังนี้

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    สวิฟท์

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    วัตถุประสงค์-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. กำหนดค่าอินสแตนซ์ที่ใช้ร่วมกันของ FirebaseApp ใน application(_:didFinishLaunchingWithOptions:) ของผู้รับมอบสิทธิ์แอปของคุณ:

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    สวิฟท์

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    วัตถุประสงค์-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. หากคุณใช้ SwiftUI คุณต้องสร้างผู้แทนแอปพลิเคชันและแนบไปกับโครงสร้าง App ของคุณผ่าน UIApplicationDelegateAdaptor หรือ NSApplicationDelegateAdaptor คุณต้องปิดใช้งานการสลับตัวแทนของแอปด้วย สำหรับข้อมูลเพิ่มเติม โปรดดู คำแนะนำ SwiftUI

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. คอมไพล์แอปของคุณใหม่

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

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

  1. พัฒนาแอปของคุณต่อไปโดยใช้เครื่องจำลองหรืออุปกรณ์ทดสอบ

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

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

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

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

  1. เปิดใช้งานการบันทึกการแก้ไขข้อบกพร่องดังต่อไปนี้:

    1. ใน Xcode (เวอร์ชันขั้นต่ำ 14.1) เลือก ผลิตภัณฑ์ > โครงการ > แก้ไขโครงการ
    2. เลือก เรียกใช้ จากเมนูด้านซ้าย จากนั้นเลือกแท็บ อาร์กิวเมนต์
    3. ในส่วน Arguments Passed on Launch ให้เพิ่ม -FIRDebugEnabled
  2. ตรวจสอบข้อความบันทึกของคุณเพื่อดูข้อความแสดงข้อผิดพลาด

  3. การตรวจสอบประสิทธิภาพแท็กข้อความบันทึกด้วย Firebase/Performance เพื่อให้คุณสามารถกรองข้อความบันทึกของคุณได้

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

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

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

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

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

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

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

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

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

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

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

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

  • การตรวจสอบประสิทธิภาพมีปัญหาความเข้ากันได้ที่ทราบกับ GTMSQLite เราไม่แนะนำให้ใช้การตรวจสอบประสิทธิภาพกับแอปที่ใช้ GTMSQLite
  • เมธอดที่สลับไปมาหลังจากเรียก FirebaseApp.configure() อาจรบกวน SDK การตรวจสอบประสิทธิภาพ
  • ปัญหาที่ทราบเกี่ยวกับ iOS 8.0-8.2 Simulator ทำให้การตรวจสอบประสิทธิภาพไม่สามารถบันทึกเหตุการณ์ด้านประสิทธิภาพได้ ปัญหาเหล่านี้ได้รับการแก้ไขแล้วใน iOS 8.3 Simulator และเวอร์ชันที่ใหม่กว่า
  • การเชื่อมต่อที่สร้างขึ้นโดยใช้ backgroundSessionConfiguration ของ NSURLSession จะแสดงนานกว่าเวลาการเชื่อมต่อที่คาดไว้ การเชื่อมต่อเหล่านี้ดำเนินการนอกกระบวนการ และการกำหนดเวลาสะท้อนถึงเหตุการณ์การโทรกลับในกระบวนการ

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