Apple platformları için Performans İzlemeyi kullanmaya başlayın

Sen başlamadan önce

Henüz yapmadıysanız Firebase'i Apple projenize ekleyin .

1. Adım : Uygulamanıza Performans İzlemeyi ekleyin

Performans İzleme SDK'sını ekledikten sonra Firebase, uygulamanızın ekran oluşturma işlemine ilişkin verileri, uygulamanızın yaşam döngüsüyle ilgili verileri ( uygulama başlangıç ​​zamanı gibi) ve HTTP/S ağ isteklerine ilişkin verileri otomatik olarak toplamaya başlar.

Firebase bağımlılıklarını yüklemek ve yönetmek için Swift Paket Yöneticisini kullanın.

  1. Xcode'da uygulama projeniz açıkken Dosya > Paket Ekle'ye gidin.
  2. İstendiğinde Firebase Apple platformları SDK deposunu ekleyin:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Performans İzleme kitaplığını seçin.
  5. -ObjC bayrağını hedefinizin derleme ayarlarının Diğer Bağlayıcı Bayrakları bölümüne ekleyin.
  6. Bitirdiğinizde Xcode, bağımlılıklarınızı arka planda otomatik olarak çözmeye ve indirmeye başlayacaktır.

Ardından Firebase modülünü yapılandırın:

  1. FirebaseCore modülünü UIApplicationDelegate ve uygulama temsilcinizin kullandığı diğer Firebase modüllerine aktarın. Örneğin, Cloud Firestore ve Authentication'ı kullanmak için:

    SwiftUI

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

    Süratli

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Amaç-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Uygulama temsilcinizin application(_:didFinishLaunchingWithOptions:) yönteminde FirebaseApp paylaşılan örneğini yapılandırın:

    SwiftUI

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

    Süratli

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

    Amaç-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. SwiftUI kullanıyorsanız, bir uygulama temsilcisi oluşturmalı ve bunu UIApplicationDelegateAdaptor veya NSApplicationDelegateAdaptor aracılığıyla App yapınıza eklemelisiniz. Ayrıca uygulama temsilcisinin swizzling özelliğini de devre dışı bırakmalısınız. Daha fazla bilgi için SwiftUI talimatlarına bakın.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Uygulamanızı yeniden derleyin.

Adım 2 : İlk veri görüntüleme için performans olaylarını oluşturun

Firebase, SDK'yı uygulamanıza başarıyla eklediğinizde etkinlikleri işlemeye başlar. Hala yerel olarak geliştirme yapıyorsanız, ilk veri toplama ve işlemeye yönelik etkinlikler oluşturmak için uygulamanızla etkileşim kurun.

  1. Bir simülatör veya test cihazı kullanarak uygulamanızı geliştirmeye devam edin.

  2. Uygulamanızı birkaç kez arka plan ve ön plan arasında değiştirerek, ekranlar arasında gezinerek uygulamanızla etkileşim kurarak ve/veya ağ isteklerini tetikleyerek etkinlikler oluşturun.

  3. Firebase konsolunun Performans kontrol paneline gidin. Birkaç dakika içinde ilk verilerinizin görüntülendiğini görmelisiniz.

    Başlangıç ​​verilerinizin görüntüsünü görmüyorsanız sorun giderme ipuçlarını inceleyin.

3. Adım : (İsteğe bağlı) Performans etkinliklerine ilişkin günlük mesajlarını görüntüleyin

  1. Hata ayıklama günlüğünü aşağıdaki şekilde etkinleştirin:

    1. Xcode'da (minimum v14.1), Ürün > Şema > Şemayı düzenle öğesini seçin.
    2. Soldaki menüden Çalıştır'ı seçin, ardından Bağımsız Değişkenler sekmesini seçin.
    3. Başlatma Sırasında Aktarılan Bağımsız Değişkenler bölümüne -FIRDebugEnabled ekleyin.
  2. Herhangi bir hata mesajı için günlük mesajlarınızı kontrol edin.

  3. Performans İzleme, günlük mesajlarını Firebase/Performance ile etiketler, böylece günlük mesajlarınızı filtreleyebilirsiniz.

  4. Performans İzleme'nin performans olaylarını günlüğe kaydettiğini gösteren aşağıdaki günlük türlerini kontrol edin:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Verilerinizi Firebase konsolunda görüntülemek için URL'yi tıklayın. Verilerin kontrol panelinde güncellenmesi birkaç dakika sürebilir.

Uygulamanız performans olaylarını günlüğe kaydetmiyorsa sorun giderme ipuçlarını inceleyin.

4. Adım : (İsteğe bağlı) Belirli kod için özel izleme ekleyin

Uygulamanızdaki belirli kodlarla ilişkili performans verilerini izlemek için özel kod izlemelerini kullanabilirsiniz.

Özel bir kod izlemeyle, uygulamanızın belirli bir görevi veya bir dizi görseli yükleme veya veritabanınızı sorgulama gibi görevleri tamamlamasının ne kadar sürdüğünü ölçebilirsiniz. Özel bir kod izlemenin varsayılan ölçümü süresidir ancak önbellek isabetleri ve bellek uyarıları gibi özel ölçümler de ekleyebilirsiniz.

Kodunuzda, Performance Monitoring SDK tarafından sağlanan API'yi kullanarak özel bir kod izlemenin başlangıcını ve sonunu tanımlarsınız (ve istediğiniz özel ölçümleri eklersiniz).

Bu özellikler ve bunları uygulamanıza nasıl ekleyeceğiniz hakkında daha fazla bilgi edinmek için Belirli bir kod için izleme ekleme sayfasını ziyaret edin.

5. Adım : Uygulamanızı dağıtın ve ardından sonuçları inceleyin

Xcode simülatörünü ve bir veya daha fazla test cihazını kullanarak Performans İzlemeyi doğruladıktan sonra uygulamanızın güncellenmiş sürümünü kullanıcılarınıza dağıtabilirsiniz.

Performans verilerini Firebase konsolunun Performans kontrol panelinden izleyebilirsiniz.

Bilinen Sorunlar

  • Performans İzleme'nin GTMSSQLite ile bilinen uyumluluk sorunları vardır. Performans İzleme'yi GTMSSQLite kullanan uygulamalarla kullanmamanızı öneririz.
  • FirebaseApp.configure() çağrıldıktan sonra yapılan swizzling yöntemi, Performans İzleme SDK'sını etkileyebilir.
  • iOS 8.0-8.2 Simülatörüyle ilgili bilinen sorunlar, Performans İzleme'nin performans olaylarını yakalamasını engeller. Bu sorunlar iOS 8.3 Simulator ve sonraki sürümlerde düzeltilmiştir.
  • NSURLSession'ın backgroundSessionConfiguration kullanılarak kurulan bağlantılar, beklenenden daha uzun bağlantı süreleri sergileyecektir. Bu bağlantılar işlem dışında yürütülür ve zamanlamalar işlem içi geri arama olaylarını yansıtır.

Sonraki adımlar