Catch up on everthing we announced at this year's Firebase Summit. Learn more

Firebase Performance Monitoring'i devre dışı bırakın

Kullanıcılarınızın Firebase Performance Monitoring'i etkinleştirmesine veya devre dışı bırakmasına izin vermek için, uygulamanızı Performans İzleme'yi etkinleştirip devre dışı bırakabileceğiniz şekilde yapılandırmak isteyebilirsiniz. Bu özelliği, uygulama geliştirme ve test etme sırasında da yararlı bulabilirsiniz.

Aşağıdakiler dikkate alınması gereken bazı seçeneklerdir:

  • Uygulamanızı oluştururken, çalışma zamanında yeniden etkinleştirme seçeneğiyle Performans İzleme SDK'sını devre dışı bırakabilirsiniz.

  • Uygulamanızı Performance Monitoring SDK etkinken oluşturabilirsiniz, ancak bunu çalışma zamanında Firebase Remote Config kullanarak devre dışı bırakma seçeneğiniz vardır.

  • Performans İzleme SDK'sını, çalışma zamanında etkinleştirme seçeneği olmadan tamamen devre dışı bırakabilirsiniz.

Uygulama oluşturma süreciniz sırasında Performans İzleme'yi devre dışı bırakın

Uygulama oluşturma süreciniz sırasında Performans İzleme'yi devre dışı bırakmanın yararlı olabileceği durumlardan biri, uygulama geliştirme ve test sırasında uygulamanızın yayın öncesi sürümünden gelen performans verilerini raporlamaktan kaçınmaktır.

Devre dışı veya devre dışı bırakmak Performans İzleme için, mülkiyet listesi dosyası (iki anahtarlarından biri ekleyebilir Info.plist Apple uygulama için):

  • Devre dışı Performans İzleme için ancak uygulama zamanında etkinleştirmek için izin set firebase_performance_collection_enabled için false uygulamanızın içinde Info.plist dosyasında.

  • Tamamen devre dışı bırakmak Performans İzleme için zamanında etkinleştirmek için hiçbir seçeneği ile set firebase_performance_collection_deactivated için true uygulamanızın içinde Info.plist dosyasında.

Remote Config'i kullanarak uygulamanızı çalışma zamanında devre dışı bırakın

Firebase Remote Config, uygulamanızın davranışında ve görünümünde değişiklik yapmanıza olanak tanır, böylece uygulamanızın dağıtılmış örneklerinde Performans İzleme'yi devre dışı bırakmanıza izin vermek için ideal bir yol sağlar.

Apple uygulamanızın bir sonraki başlatılışında Performans İzleme veri toplamayı devre dışı bırakmak için aşağıda gösterilen örnek kodu kullanın. Apple app Uzaktan yapılandırma kullanma hakkında daha fazla bilgi için bkz Apple platformlarında kullanılması Firebase Uzaktan Config'i .

  1. Yapılandırm kullanıldığını Remote'u olun Podfile :

    pod 'Firebase/RemoteConfig'
    
  2. Uygulamanızın üstüne Şunu ekleyin AppDelegate dosyası:

    Süratli

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    import FirebaseRemoteConfig
    

    Amaç-C

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    @import FirebaseRemoteConfig;
    
  3. Senin içinde AppDelegate dosyasına, aşağıdaki kodu ekleyin launchOptions ifadelerden application:didFinishLaunchingWithOptions: Örnek yöntemi:

    Süratli

    Not: Bu ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    remoteConfig = RemoteConfig.remoteConfig()
    // You can change the "false" below to "true" to permit more fetches when validating
    // your app, but you should change it back to "false" or remove this statement before
    // distributing your app in production.
    let remoteConfigSettings = RemoteConfigSettings(developerModeEnabled: false)
    remoteConfig.configSettings = remoteConfigSettings!
    // Load in-app defaults from a plist file that sets perf_disable to false until
    // you update values in the Firebase console.
    remoteConfig.setDefaultsFromPlistFileName("RemoteConfigDefaults")
    // Important! This needs to be applied before FirebaseApp.configure()
    if !remoteConfig["perf_disable"].boolValue {
        // The following line disables all automatic (out-of-the-box) monitoring
        Performance.sharedInstance().isInstrumentationEnabled = false
        // The following line disables all custom monitoring
        Performance.sharedInstance().isDataCollectionEnabled = false
    }
    else {
        Performance.sharedInstance().isInstrumentationEnabled = true
        Performance.sharedInstance().isDataCollectionEnabled = true
    }
    // Use Firebase library to configure APIs
    FirebaseApp.configure()
    

    Amaç-C

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    self.remoteConfig = [FIRRemoteConfig remoteConfig];
    // You can change the NO below to YES to permit more fetches when validating
    // your app, but you should change it back to NO or remove this statement before
    // distributing your app in production.
    FIRRemoteConfigSettings *remoteConfigSettings =
        [[FIRRemoteConfigSettings alloc] initWithDeveloperModeEnabled:NO];
    self.remoteConfig.configSettings = remoteConfigSettings;
    // Load in-app defaults from a plist file that sets perf_disable to false until
    // you update values in the Firebase console.
    [self.remoteConfig setDefaultsFromPlistFileName:@"RemoteConfigDefaults"];
    // Important! This needs to be applied before [FIRApp configure]
    if (!self.remoteConfig[@"perf_disable"].numberValue.boolValue) {
        // The following line disables all automatic (out-of-the-box) monitoring
        [FIRPerformance sharedInstance].instrumentationEnabled = NO;
        // The following line disables all custom monitoring
        [FIRPerformance sharedInstance].dataCollectionEnabled = NO;
    }
    else {
        [FIRPerformance sharedInstance].instrumentationEnabled = YES;
        [FIRPerformance sharedInstance].dataCollectionEnabled = YES;
    }
    // Use Firebase library to configure APIs
    [FIRApp configure];
    
  4. In ViewController.m veya uygulama tarafından kullanılan başka uygulama dosyası, almak için aşağıdaki kodu ekleyin ve Uzaktan Yapılandırma değerlerini etkinleştirmek:

    Süratli

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    //RemoteConfig fetch and activation in your app, shortly after startup
    remoteConfig.fetch(withExpirationDuration: TimeInterval(30.0)) { (status, error) -> Void in
      if status == .success {
        print("Config fetched!")
        self.remoteConfig.activateFetched()
      } else {
        print("Config not fetched")
        print("Error \(error!.localizedDescription)")
      }
    }
    

    Amaç-C

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    //RemoteConfig fetch and activation in your app, shortly after startup
    [self.remoteConfig fetchWithExpirationDuration:30.0 completionHandler:^(FIRRemoteConfigFetchStatus status, NSError *error) {
      if (status == FIRRemoteConfigFetchStatusSuccess) {
        NSLog(@"Config fetched!");
        [self.remoteConfig activateFetched];
      } else {
        NSLog(@"Config not fetched");
        NSLog(@"Error %@", error.localizedDescription);
      }
    }];
    
  5. Firebase konsolunda İzleme devre dışı Performans, sonra, uygulamanızın projede bir perf_disable parametre oluşturmak için değerini ayarlamak true .

    Size perf_disable değerini ayarlarsanız false , Performans İzleme kalıntıları sağladı.

Otomatik veya özel veri toplamayı ayrı olarak devre dışı bırakın

Tüm otomatik (kullanıma hazır) izlemeyi özel izlemeden ayrı olarak devre dışı bırakmanıza izin vermek için yukarıda ve Firebase konsolunda gösterilen kodda bazı değişiklikler yapabilirsiniz.

  1. Aşağıdaki kodu ekleyin launchOptions ifadelerden application:didFinishLaunchingWithOptions: (yerine aynı örnek yöntemi için yukarıda gösterilen nelerin) örneği yöntemi:

    Süratli

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    remoteConfig = FIRRemoteConfig.remoteConfig()
    let remoteConfigSettings = FIRRemoteConfigSettings(developerModeEnabled: true)
    remoteConfig.configSettings = remoteConfigSettings!
    // Important! This needs to be applied before FirebaseApp.configure()
    if remoteConfig["perf_disable_auto"].boolValue {
        // The following line disables all automatic (out-of-the-box) monitoring
        Performance.sharedInstance().isInstrumentationEnabled = false
    }
    else {
        Performance.sharedInstance().isInstrumentationEnabled = true
    }
    if remoteConfig["perf_disable_manual"].boolValue {
        // The following line disables all custom monitoring
        Performance.sharedInstance().isDataCollectionEnabled = false
    }
    else {
        Performance.sharedInstance().isDataCollectionEnabled = true
    }
    // Use Firebase library to configure APIs
    FirebaseApp.configure()
    

    Amaç-C

    Not: Bu Firebase ürün MacOS kullanılamaz, Mac Catalyst, watchos hedefler.
    self.remoteConfig = [FIRRemoteConfig remoteConfig];
    FIRRemoteConfigSettings *remoteConfigSettings =
        [[FIRRemoteConfigSettings alloc] initWithDeveloperModeEnabled:YES];
    self.remoteConfig.configSettings = remoteConfigSettings;
    // Important! This needs to be applied before [FirebaseApp configure]
    if (self.remoteConfig[@"perf_disable_auto"].numberValue.boolValue) {
        // The following line disables all automatic (out-of-the-box) monitoring
        [FIRPerformance sharedInstance].instrumentationEnabled = NO;
    }
    else {
        [FIRPerformance sharedInstance].instrumentationEnabled = YES;
    }
    if (self.remoteConfig[@"perf_disable_manual"].numberValue.boolValue) {
        // The following line disables all custom monitoring
        [FIRPerformance sharedInstance].dataCollectionEnabled = NO;
    }
    else {
        [FIRPerformance sharedInstance].dataCollectionEnabled = YES;
    }
    // Use Firebase library to configure APIs
    [FirebaseApp configure];
    
  2. Firebase konsolunda aşağıdakileri tamamlayın:

    • Tüm otomatik (out-of-the-box) izlenmesi, uygulamanızın projede bir perf_disable_auto parametre oluşturmak, sonra da set değerini devre dışı bırakmak için true .
    • Tüm özel izleme devre dışı bırakmak için, daha sonra onun değerini ayarlamak için uygulamanızın projede bir perf_disable_manual parametre oluşturun true .