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ğine sahipsiniz.
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 alınan performans verilerini raporlamaktan kaçınmaktır.
Performans İzlemeyi devre dışı bırakmak veya devre dışı bırakmak için Apple uygulamanızın özellik listesi dosyasına ( Info.plist
) iki anahtardan birini ekleyebilirsiniz:
Performans İzlemeyi devre dışı bırakmak, ancak uygulamanızın çalışma zamanında etkinleştirmesine izin vermek için, uygulamanızın
Info.plist
dosyasındafirebase_performance_collection_enabled
false
olarak ayarlayın.Performans İzleme'yi çalışma zamanında etkinleştirme seçeneği olmadan tamamen devre dışı bırakmak için uygulamanızın
Info.plist
dosyasındafirebase_performance_collection_deactivated
true
olarak ayarlayın.
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. Bir Apple uygulamasında Remote Config kullanma hakkında daha fazla bilgi için bkz . Apple platformlarında Firebase Remote Config'i kullanma .
Podfile
Remote Config'in kullanıldığından emin olun:pod 'Firebase/RemoteConfig'
Aşağıdakileri uygulamanızın
AppDelegate
dosyasının en üstüne ekleyin:Süratli
Not: Bu Firebase ürünü, macOS, Mac Catalyst, watchOS hedeflerinde mevcut değildir.import FirebaseRemoteConfig
Amaç-C
Not: Bu Firebase ürünü, macOS, Mac Catalyst, watchOS hedeflerinde mevcut değildir.@import FirebaseRemoteConfig;
AppDelegate
dosyanızda,application:didFinishLaunchingWithOptions:
örnek yöntemindekilaunchOptions
ifadelerine aşağıdaki kodu ekleyin:Süratli
Not: Bu ürün macOS, Mac Catalyst, watchOS hedeflerinde mevcut değildir.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, Mac Catalyst, watchOS hedeflerinde mevcut değildir.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];
ViewController.m
'de veya uygulamanız tarafından kullanılan başka bir uygulama dosyasında, Remote Config değerlerini almak ve etkinleştirmek için aşağıdaki kodu ekleyin:Süratli
Not: Bu Firebase ürünü, macOS, Mac Catalyst, watchOS hedeflerinde mevcut değildir.//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, Mac Catalyst, watchOS hedeflerinde mevcut değildir.//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); } }];
Firebase konsolunda Performans İzlemeyi devre dışı bırakmak için uygulamanızın projesinde bir perf_disable parametresi oluşturun, ardından değerini
true
olarak ayarlayın.perf_disable değerini
false
olarak ayarlarsanız, Performans İzleme etkin kalır.
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 gösterilen kodda ve Firebase konsolunda bazı değişiklikler yapabilirsiniz.
Uygulamadaki
launchOptions
ifadelerine aşağıdaki kodu ekleyinapplication:didFinishLaunchingWithOptions:
örnek yöntemi (aynı örnek yöntemi için yukarıda gösterilenler yerine):Süratli
Not: Bu Firebase ürünü, macOS, Mac Catalyst, watchOS hedeflerinde mevcut değildir.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, Mac Catalyst, watchOS hedeflerinde mevcut değildir.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];
Firebase konsolunda aşağıdakileri tamamlayın:
- Tüm otomatik (kullanıma hazır) izlemeyi devre dışı bırakmak için uygulamanızın projesinde bir perf_disable_auto parametresi oluşturun, ardından değerini
true
olarak ayarlayın. - Tüm özel izlemeyi devre dışı bırakmak için uygulamanızın projesinde bir perf_disable_manual parametresi oluşturun, ardından değerini
true
olarak ayarlayın.
- Tüm otomatik (kullanıma hazır) izlemeyi devre dışı bırakmak için uygulamanızın projesinde bir perf_disable_auto parametresi oluşturun, ardından değerini