Uygulama geliştirme ve test etme sırasında, uygulamanızın sürümünü devre dışı bırakmak Performance Monitoring
Örneğin, uygulama oluşturma işleminizde Performance Monitoring'yi devre dışı bırakarak şunları yapabilirsiniz:
Performance Monitoring ürününün belirli işlevlerini (ör. Performance Monitoring Gradle eklentisi) derlemenize yardımcı olur, ancak uygulamanız için işlevleri sürüm derlemesi.
Uygulamanızı oluştururken Performance Monitoring'ü devre dışı bırakın ancak uygulamanızın çalışma zamanında yeniden etkinleştirmesine izin verin.
Uygulamanızı oluştururken Performance Monitoring politikasını devre dışı bırakın ve uygulamanızın şunları yapmasına izin verme çalışma zamanında yeniden etkinleştirebilirsiniz.
Uygulamanızı Performance Monitoring etkin olarak da derleyebilirsiniz. Firebase Remote Config kullanarak Üretim uygulamanızda Performance Monitoring özelliğini devre dışı bırakma (ve yeniden etkinleştirme) esnekliği. Entegre Hatta, uygulamanızı kullanıcıların bu seçeneği etkinleştirmesine veya devre dışı bırakmasına izin verecek şekilde Performance Monitoring kullanılıyor.
Uygulama geliştirme işleminiz sırasında Performance Monitoring özelliğini devre dışı bırakın
Performance Monitoring Gradle eklentisini devre dışı bırakarak ve/veya Performance Monitoring Android kitaplığını devre dışı bırakarak derleme işleminiz sırasında Performance Monitoring'ü devre dışı bırakabilirsiniz.
Geliştirme ve hata ayıklama sırasında eklentiyi devre dışı bırakmak faydalıdır çünkü enstrümantasyonları arttırılabilir. Ancak uygulama başlangıcı, uygulama ön planda ve uygulama arka planda izlerinden ve uygulamanızdaki özel kod izlerinden gelen performans verilerini görüntülemeye devam edebilmek için kitaplığı etkin tutmayı düşünebilirsiniz.
Performance Monitoring Gradle eklentisini devre dışı bırak
instrumentationEnabled
ekleyerek Performance Monitoring eklentisini devre dışı bırakabilirsiniz
aşağıdaki seçenekleri kullanarak işaretleyin:
Uzantı Mülkü — Eklentiyi derleme sırasında belirli bir derleme varyantı
Proje Mülkü — Eklentiyi Derleme sırasında tüm derleme varyantları
Uzantıyı, Uzantı Mülkü işareti aracılığıyla devre dışı bırakma
Uzantı Mülkü işareti kullanarak Performance Monitoring eklentisini devre dışı bırakabilirsiniz derleme zamanında belirli bir derleme varyantı için tasarlanmıştır.
Kök düzeyindeki (proje düzeyinde) Gradle dosyanızda (
<project>/build.gradle.kts
veya<project>/build.gradle
), Android Gradle Eklentisi bağımlılığı, v3.4.0 veya sonraki bir sürüm olarak belirtilmiş.Android Gradle eklentisinin önceki sürümlerinde, belirli bir derleme varyantı için Performance Monitoring eklentisini devre dışı bırakabilirsiniz ancak bu varyantın derleme süresi katkısı tamamen ortadan kaldırılmaz.
Modülünüz (uygulama düzeyi) Gradle dosyanıza şu işareti ekleyin (genellikle
<project>/<app-module>/build.gradle.kts
veya<project>/<app-module>/build.gradle
), ardından devre dışı bırakmak için bunufalse
olarak ayarlayın. Performance Monitoring eklentisi.Kotlin
import com.google.firebase.perf.plugin.FirebasePerfExtension // ... android { // ... buildTypes { getByName("debug") { configure<FirebasePerfExtension> { // Set this flag to 'false' to disable @AddTrace annotation processing and // automatic monitoring of HTTP/S network requests // for a specific build variant at compile time. setInstrumentationEnabled(false) } } } }
Groovy
android { // ... buildTypes { debug { FirebasePerformance { // Set this flag to 'false' to disable @AddTrace annotation processing and // automatic monitoring of HTTP/S network requests // for a specific build variant at compile time. instrumentationEnabled false } } } }
Eklentiyi Proje Mülkü bayrağı aracılığıyla devre dışı bırakma
Proje Mülkü işareti kullanarak Performance Monitoring eklentisini şunun için devre dışı bırakabilirsiniz: derleme sırasında tüm derleme varyantları için geçerlidir.
Aşağıdaki işareti gradle.properties
dosyanıza ekleyip false
olarak ayarlayın.
Performance Monitoring eklentisini devre dışı bırakın.
// ... // Set this flag to 'false' to disable @AddTrace annotation processing and // automatic monitoring of HTTP/S network requests // for all build variants at compile time. firebasePerformanceInstrumentationEnabled=false
Performance Monitoring Android kitaplığını devre dışı bırak
Derleme sırasında Performance Monitoring kitaplığını devre dışı bırakırsanız aşağıdaki ayarı seçebilirsiniz: Böylece uygulamanızın çalışma zamanında kitaplığı etkinleştirmesine izin verin.
Derleme sırasında kitaplığı devre dışı bırakın, ancak uygulamanızın çalışma zamanında etkinleştirmesine izin verin
Aşağıdaki <meta-data>
öğesini uygulamanızın AndroidManifest.xml
öğesine ekleyin
dosya:
<application> <meta-data android:name="firebase_performance_collection_enabled" android:value="false" /> </application>
Derleme sırasında kitaplığı devre dışı bırak ancak uygulamanızın çalışma zamanında bu kitaplığı etkinleştirmesine izin verme
Uygulamanızın AndroidManifest.xml
dosyasına aşağıdaki <meta-data>
öğesini ekleyin:
<application> <meta-data android:name="firebase_performance_collection_deactivated" android:value="true" /> </application>
Remote Config kullanarak uygulamanızı çalışma zamanında devre dışı bırakın
Firebase Remote Config, davranış ve görünümde değişiklik yapmanıza olanak tanır uygulamanızda Performance Monitoring özelliğini devre dışı bırakmanız için ideal bir yöntemdir. uygulamanızın dağıtılan örneklerini gösterir.
Android uygulamanız bir sonraki sefere Performance Monitoring veri toplama işlevini devre dışı bırakmak için aşağıdaki örnek kodu kullanın. Daha fazla bilgi için Bir Android uygulamasında Remote Config için bkz. Firebase Remote Config uygulamasını Android'de kullanın.
Remote Config'ün, modül (uygulama düzeyi) Gradle dosyanızı (genellikle
<project>/<app-module>/build.gradle.kts
veya<project>/<app-module>/build.gradle
)dependencies
bölümünde bulunduğundan emin olun:Kotlin+KTX
implementation("com.google.firebase:firebase-config-ktx:22.0.0")
Java
implementation("com.google.firebase:firebase-config:22.0.0")
perf_disable
için Remote Config ayarlarını yapın ve Performance Monitoring politikasını devre dışı bırakıntrue
olarak ayarlandı:Kotlin+KTX
// Setup remote config val config = Firebase.remoteConfig // You can uncomment the following two statements to permit more fetches when // validating your app, but you should comment out or delete these lines before // distributing your app in production. // val configSettings = remoteConfigSettings { // minimumFetchIntervalInSeconds = 3600 // } // config.setConfigSettingsAsync(configSettings) // Load in-app defaults from an XML file that sets perf_disable to false until you update // values in the Firebase Console // Observe the remote config parameter "perf_disable" and disable Performance Monitoring if true config.setDefaultsAsync(R.xml.remote_config_defaults) .addOnCompleteListener { task -> if (task.isSuccessful) { Firebase.performance.isPerformanceCollectionEnabled = !config.getBoolean("perf_disable") } else { // An error occurred while setting default parameters } }
Java
// Setup remote config final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); // You can uncomment the following two statements to permit more fetches when // validating your app, but you should comment out or delete these lines before // distributing your app in production. // FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder() // .setMinimumFetchIntervalInSeconds(3600) // .build(); // config.setConfigSettingsAsync(configSettings); // Load in-app defaults from an XML file that sets perf_disable to false until you update // values in the Firebase Console //Observe the remote config parameter "perf_disable" and disable Performance Monitoring if true config.setDefaultsAsync(R.xml.remote_config_defaults) .addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { if (task.isSuccessful()) { if (config.getBoolean("perf_disable")) { FirebasePerformance.getInstance().setPerformanceCollectionEnabled(false); } else { FirebasePerformance.getInstance().setPerformanceCollectionEnabled(true); } } else { // An error occurred while setting default parameters } } });
Getirmek ve etkinleştirmek için
MainActivity.java
hizmetine aşağıdaki kodu ekleyin Remote Config değerleri:Kotlin+KTX
// Remote Config fetches and activates parameter values from the service val config = Firebase.remoteConfig config.fetch(3600) .continueWithTask { task -> if (!task.isSuccessful) { task.exception?.let { throw it } } config.activate() } .addOnCompleteListener(this) { task -> if (task.isSuccessful) { // Parameter values successfully activated // ... } else { // Handle errors } }
Java
//Remote Config fetches and activates parameter values from the service final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); config.fetch(3600) .continueWithTask(new Continuation<Void, Task<Boolean>>() { @Override public Task<Boolean> then(@NonNull Task<Void> task) throws Exception { if (!task.isSuccessful()) { throw task.getException(); } return config.activate(); } }) .addOnCompleteListener(new OnCompleteListener<Boolean>() { @Override public void onComplete(@NonNull Task<Boolean> task) { if (task.isSuccessful()) { // Parameter values successfully activated // ... } else { // Handle errors } } });
Firebase konsolunda Performance Monitoring politikasını devre dışı bırakmak için bir perf_disable oluşturun parametresini kullanabilir ve ardından değerini
true
olarak ayarlayabilirsiniz.Bu değişiklik, Performance Monitoring SDK'sına "işlem yok" çağrıları (NOOP'ler) göndererek uygulamanızda Performance Monitoring SDK'sının kullanılmasının uygulama performansı üzerindeki önemli etkilerini ortadan kaldırır.
perf_disable değerini
false
olarak ayarlarsanız Performance Monitoring aynı kalır etkin.