рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
рдЕрдЧрд░ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА A/B рдЯреЗрд╕реНрдЯрд┐рдВрдЧ рдирд╣реАрдВ рдмрдирд╛рдИ рд╣реИ, рддреЛ рдЕрдкрдиреЗ Android рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ Firebase рдЬреЛрдбрд╝реЗрдВ.
рдкрд╣рд▓рд╛ рдЪрд░рдг: рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ Performance Monitoring SDK рдЬреЛрдбрд╝рдирд╛
Performance Monitoring SDK рдЯреВрд▓ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, Firebase рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕реНрдХреНрд░реАрди рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХрд╛ рдбреЗрдЯрд╛ рдЕрдкрдиреЗ-рдЖрдк рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ. рд╕рд╛рде рд╣реА, рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд╛рдЗрдлрд╝рд╕рд╛рдЗрдХрд▓ рд╕реЗ рдЬреБрдбрд╝рд╛ рдбреЗрдЯрд╛ рднреА рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ. рдЬреИрд╕реЗ, рдРрдкреНрд▓рд┐рдХреЗрд╢рди рд╢реБрд░реВ рд╣реЛрдиреЗ рдХрд╛ рд╕рдордп. рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдореЙрдирд┐рдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Firebase рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди (рдЕрдЧрд▓рд╛ рдЪрд░рдг) рднреА рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛.
рдЕрдкрдиреА рдореЙрдбреНрдпреВрд▓ (рдРрдкреНрд▓рд┐рдХреЗрд╢рди-рд▓реЗрд╡рд▓) рдХреА Gradle рдлрд╝рд╛рдЗрд▓ (рдЖрдо рддреМрд░ рдкрд░
<project>/<app-module>/build.gradle.kts
рдпрд╛<project>/<app-module>/build.gradle
) рдореЗрдВ, Android рдХреЗ рд▓рд┐рдП Performance Monitoring рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдЬреЛрдбрд╝реЗрдВ. рд╣рдорд╛рд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╡рд░реНрд╢рди рдХреЛ рдХрдВрдЯреНрд░реЛрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Firebase Android BoM рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВ.dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.2.0")) // Add the dependency for the Performance Monitoring library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf") }
Firebase Android BoM рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдкрд░, рдЖрдкрдХрд╛ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рд╣рдореЗрд╢рд╛ Firebase Android рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрд╢рди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдЧрд╛.
(рд╡реИрдХрд▓реНрдкрд┐рдХ) BoM рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдмрд┐рдирд╛, Firebase рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдЬреЛрдбрд╝реЗрдВ
рдЕрдЧрд░ рдЖрдкрдХреЛ Firebase BoM рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╣рд░ Firebase рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╡рд░реНрд╢рди рдХреЛ рдЙрд╕рдХреА рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рд▓рд╛рдЗрди рдореЗрдВ рддрдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛.
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЕрдЧрд░ рдЖрдкрдиреЗ рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рд╕реЗ рдЬрд╝реНрдпрд╛рджрд╛ Firebase рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рд╣рдорд╛рд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╡рд░реНрд╢рди рдореИрдиреЗрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП BoM рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВ. рдЗрд╕рд╕реЗ рдпрд╣ рдкрдХреНрдХрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛ рдХрд┐ рд╕рднреА рд╡рд░реНрд╢рди рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реЛрдВ.
dependencies { // Add the dependency for the Performance Monitoring library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf:22.0.1") }
рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓ рдХрд░реЗрдВ.
рджреВрд╕рд░рд╛ рдЪрд░рдг: рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди рдЬреЛрдбрд╝рдирд╛
Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, Firebase рдЕрдкрдиреЗ-рдЖрдк HTTP/S рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдбреЗрдЯрд╛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ. рдпрд╣ рдкреНрд▓рдЧрд┐рди, @AddTrace annotation рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдХреЗ, рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреЛ рдЗрдВрд╕реНрдЯреНрд░реБрдореЗрдВрдЯ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рднреА рджреЗрддрд╛ рд╣реИ.
рдЕрдкрдиреА рд░реВрдЯ-рд▓реЗрд╡рд▓ (рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рд▓реЗрд╡рд▓) Gradle рдлрд╝рд╛рдЗрд▓ (
<project>/build.gradle.kts
рдпрд╛<project>/build.gradle
) рдореЗрдВ, Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди рдЬреЛрдбрд╝реЗрдВ:Kotlin
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id("com.android.application") version "7.3.0" apply false // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.4.3" apply false // Add the dependency for the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") version "2.0.1" apply false }
Groovy
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id 'com.android.application' version '7.3.0' apply false // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.4.3' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '2.0.1' apply false }
рдЕрдкрдиреА рдореЙрдбреНрдпреВрд▓ (рдРрдкреНрд▓рд┐рдХреЗрд╢рди-рд▓реЗрд╡рд▓) Gradle рдлрд╝рд╛рдЗрд▓ (рдЖрдо рддреМрд░ рдкрд░
<project>/<app-module>/build.gradle.kts
рдпрд╛<project>/<app-module>/build.gradle
) рдореЗрдВ, Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди рдЬреЛрдбрд╝реЗрдВ:Kotlin
plugins { id("com.android.application") // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") ... }
Groovy
plugins { id 'com.android.application' // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' ... }
рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓ рдХрд░реЗрдВ.
рддреАрд╕рд░рд╛ рдЪрд░рдг: рд╢реБрд░реБрдЖрддреА рдбреЗрдЯрд╛ рдбрд┐рд╕рдкреНрд▓реЗ рдХреЗ рд▓рд┐рдП рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдЗрд╡реЗрдВрдЯ рдЬрдирд░реЗрдЯ рдХрд░рдирд╛
рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ SDK рдЯреВрд▓ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, Firebase рдЗрд╡реЗрдВрдЯ рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ. рдЕрдЧрд░ рдЕрдм рднреА рд╕реНрдерд╛рдиреАрдп рддреМрд░ рдкрд░ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╢реБрд░реБрдЖрддреА рдбреЗрдЯрд╛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рдЙрд╕реЗ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВ.
рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдФрд░ рдлрд╝реЛрд░рдЧреНрд░рд╛рдЙрдВрдб рдХреЗ рдмреАрдЪ рдХрдИ рдмрд╛рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдХреЗ рдЗрд╡реЗрдВрдЯ рдЬрдирд░реЗрдЯ рдХрд░реЗрдВ. рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реНрдХреНрд░реАрди рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░реЗрдВ рдФрд░/рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдз рдЯреНрд░рд┐рдЧрд░ рдХрд░реЗрдВ.
Firebase рдХрдВрд╕реЛрд▓ рдХреЗ рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рдЬрд╛рдПрдВ. рдЖрдкрдХреЛ рд╢реБрд░реБрдЖрддреА рдбреЗрдЯрд╛ рдХреБрдЫ рд╣реА рдорд┐рдирдЯреЛрдВ рдореЗрдВ рджрд┐рдЦрдиреЗ рд▓рдЧреЗрдЧрд╛.
рдЕрдЧрд░ рдЖрдкрдХреЛ рд╢реБрд░реБрдЖрддреА рдбреЗрдЯрд╛ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ, рддреЛ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░рдиреЗ рд╕реЗ рдЬреБрдбрд╝реА рд╕рд▓рд╛рд╣ рджреЗрдЦреЗрдВ.
рдЪреМрдерд╛ рдЪрд░рдг: (рдЬрд╝рд░реВрд░реА рдирд╣реАрдВ) рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдЗрд╡реЗрдВрдЯ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рдореИрд╕реЗрдЬ рджреЗрдЦрдирд╛
рдмрд┐рд▓реНрдб рдХреЗ рд╕рдордп Performance Monitoring рдХреЗ рд▓рд┐рдП рдбреАрдмрдЧ рд▓реЙрдЧрд┐рдВрдЧ рдЪрд╛рд▓реВ рдХрд░реЗрдВ. рдЗрд╕рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА
AndroidManifest.xml
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ<meta-data>
рдПрд▓рд┐рдореЗрдВрдЯ рдЬреЛрдбрд╝реЗрдВ. рдЬреИрд╕реЗ:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
рдЧрдбрд╝рдмрдбрд╝реА рдХреЗ рдореИрд╕реЗрдЬ рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ рд▓реЙрдЧ рдореИрд╕реЗрдЬ рджреЗрдЦреЗрдВ.
Performance Monitoring, рдЕрдкрдиреЗ рд▓реЙрдЧ рдореИрд╕реЗрдЬ рдХреЛ
FirebasePerformance
рд╕реЗ рдЯреИрдЧ рдХрд░рддрд╛ рд╣реИ. logcat рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдХреЗ, рдЦрд╛рд╕ рддреМрд░ рдкрд░ рдЕрд╡рдзрд┐ рдХреЗ рдЯреНрд░реЗрд╕ рдФрд░ рдПрдЪрдЯреАрдЯреАрдкреА/рдПрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдз рдХреА рд▓реЙрдЧрд┐рдВрдЧ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ. рдЗрд╕рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ:adb logcat -s FirebasePerformance
рдЗрди рд▓реЙрдЧ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ. рдЗрдирд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ Performance Monitoring рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдЗрд╡реЗрдВрдЯ рд▓реЙрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
Firebase рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЕрдкрдирд╛ рдбреЗрдЯрд╛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдпреВрдЖрд░рдПрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ. рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рдбреЗрдЯрд╛ рдЕрдкрдбреЗрдЯ рд╣реЛрдиреЗ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ.
рдЕрдЧрд░ рдЖрдкрдХрд╛ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдЗрд╡реЗрдВрдЯ рд▓реЙрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд╕реБрдЭрд╛рд╡ рджреЗрдЦреЗрдВ.
рдкрд╛рдВрдЪрд╡рд╛рдВ рдЪрд░рдг: (рдЬрд╝рд░реВрд░реА рдирд╣реАрдВ) рдХрд┐рд╕реА рдХреЛрдб рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдЬреЛрдбрд╝рдирд╛
рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХрд┐рд╕реА рдХреЛрдб рд╕реЗ рдЬреБрдбрд╝реЗ рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдбреЗрдЯрд╛ рдХреЛ рдореЙрдирд┐рдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреЛ рдЗрдВрд╕реНрдЯреНрд░реБрдореЗрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреА рдорджрдж рд╕реЗ, рдпрд╣ рдореЗрдЬрд╝рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХреЛрдИ рдЦрд╛рд╕ рдЯрд╛рд╕реНрдХ рдпрд╛ рдЯрд╛рд╕реНрдХ рдХрд╛ рд╕реЗрдЯ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ. рдЬреИрд╕реЗ, рдЗрдореЗрдЬ рдХрд╛ рд╕реЗрдЯ рд▓реЛрдб рдХрд░рдирд╛ рдпрд╛ рдЕрдкрдиреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдирд╛. рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореЗрдЯреНрд░рд┐рдХ, рдЙрд╕рдХреА рдЕрд╡рдзрд┐ рд╣реЛрддреА рд╣реИ. рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд╕реНрдЯрдо рдореЗрдЯреНрд░рд┐рдХ рднреА рдЬреЛрдбрд╝реА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ. рдЬреИрд╕реЗ, рдХреИрд╢ рд╣рд┐рдЯ рдФрд░ рдореЗрдореЛрд░реА рд╕реЗ рдЬреБрдбрд╝реА рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдВ.
рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ, Performance Monitoring SDK рдЯреВрд▓ рд╕реЗ рдорд┐рд▓реЗ рдПрдкреАрдЖрдИ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдХреЗ, рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреА рд╢реБрд░реБрдЖрдд рдФрд░ рдЦрддреНрдо рд╣реЛрдиреЗ рдХрд╛ рд╕рдордп рддрдп рдХрд░реЗрдВ. рд╕рд╛рде рд╣реА, рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╕реНрдЯрдо рдореЗрдЯреНрд░рд┐рдХ рдЬреЛрдбрд╝реЗрдВ. Android рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП, @AddTrace annotation рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдХреЗ, рдХрд┐рд╕реА рдЦрд╛рд╕ рддрд░реАрдХреЗ рдХреА рдЕрд╡рдзрд┐ рдХреЛ рднреА рдореЙрдирд┐рдЯрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
рдЗрди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╝реНрдпрд╛рджрд╛ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдХреЛрдб рдХреЗ рд▓рд┐рдП рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдЬреЛрдбрд╝рдирд╛ рдкрд░ рдЬрд╛рдПрдВ.
рдЫрдард╛ рдЪрд░рдг: рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реЗрдВ. рдЗрд╕рдХреЗ рдмрд╛рдж, рдирддреАрдЬреЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░реЗрдВ
рдПрдХ рдпрд╛ рдЙрд╕рд╕реЗ рдЬрд╝реНрдпрд╛рджрд╛ рдЯреЗрд╕реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдХреЗ Performance Monitoring рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рд╡рд░реНрд╢рди рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
Firebase рдХрдВрд╕реЛрд▓ рдХреЗ рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рдЬрд╛рдХрд░, рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдбреЗрдЯрд╛ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛рдПрдВ
Performance Monitoring Gradle рдкреНрд▓рдЧрд┐рди v1.1.0 рдХреА рд╡рдЬрд╣ рд╕реЗ, Guava рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдореЗрдВ рдЕрдВрддрд░ рдЖ рд╕рдХрддрд╛ рд╣реИ. рдЗрд╕рд╕реЗ рдпрд╣ рдЧрдбрд╝рдмрдбрд╝реА рд╣реЛ рд╕рдХрддреА рд╣реИ:
Error:Execution failed for task ':app:packageInstantRunResourcesDebug'. > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
рдЕрдЧрд░ рдЖрдкрдХреЛ рдпрд╣ рдЧрдбрд╝рдмрдбрд╝реА рджрд┐рдЦрддреА рд╣реИ, рддреЛ рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рдПрдХ рдХрд╛рдо рдХрд░реЗрдВ:
Performance Monitoring рдкреНрд▓рдЧрд┐рди рдХреЛ v1.1.1 рдпрд╛ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреЗ рд╡рд░реНрд╢рди рдкрд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ. рд╕рдмрд╕реЗ рдирдпрд╛ рд╡рд░реНрд╢рди v2.0.1 рд╣реИ.
рдЕрдкрдиреА рд░реВрдЯ-рд▓реЗрд╡рд▓ (рдкреНрд░реЛрдЬреЗрдХреНрдЯ-рд▓реЗрд╡рд▓) Gradle рдлрд╝рд╛рдЗрд▓ (
<project>/build.gradle.kts
рдпрд╛<project>/build.gradle
) рдореЗрдВ, Performance Monitoring рдкреНрд▓рдЧрд┐рди рдХреА рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рд╡рд╛рд▓реА рд▓рд╛рдЗрди рдХреЛ рдЗрд╕ рддрд░рд╣ рдмрджрд▓реЗрдВ:Kotlin
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath("com.google.firebase:perf-plugin:1.1.0") { exclude(group = "com.google.guava", module = "guava-jdk5") } } }
Groovy
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath('com.google.firebase:perf-plugin:1.1.0') { exclude group: 'com.google.guava', module: 'guava-jdk5' } } }
Performance Monitoring, рдПрдЪрдЯреАрдЯреАрдкреА рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрд▓ рдкреЗрд▓реЛрдб рд╕рд╛рдЗрдЬрд╝ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ. рдпрд╣ рд░рд┐рдкреЛрд░реНрдЯ, рдПрдЪрдЯреАрдЯреАрдкреА рдХреЙрдиреНрдЯреЗрдВрдЯ-рд▓реЗрдВрде рд╣реЗрдбрд░ рдореЗрдВ рд╕реЗрдЯ рдХреА рдЧрдИ рд╡реИрд▓реНрдпреВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИ. рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡реИрд▓реНрдпреВ рд╣рдореЗрд╢рд╛ рд╕рд╣реА рди рд╣реЛ.
Performance Monitoring рдпрд╣ рд╕реБрд╡рд┐рдзрд╛, рдПрдХ рд╕реЗ рдЬрд╝реНрдпрд╛рджрд╛ рдкреНрд░реЛрд╕реЗрд╕ рд╡рд╛рд▓реЗ Android рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕рд┐рд░реНрдлрд╝ рдореБрдЦреНрдп рдкреНрд░реЛрд╕реЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ.
рдЕрдЧрд▓реЗ рдЪрд░рдг
Performance Monitoring Android рдХреЛрдб рдХреЗ рд╕реИрдВрдкрд▓ рдХреЛ GitHub рдкрд░ рджреЗрдЦреЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдВ.
Performance Monitoring рдХреЗ рдЬрд╝рд░рд┐рдП рдЕрдкрдиреЗ-рдЖрдк рдЗрдХрдЯреНрдард╛ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╝реНрдпрд╛рджрд╛ рдЬрд╛рдиреЗрдВ:
- рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд╛рдЗрдлрд╝рд╕рд╛рдЗрдХрд▓ рд╕реЗ рдЬреБрдбрд╝рд╛ рдбреЗрдЯрд╛, рдЬреИрд╕реЗ рдХрд┐ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рд╢реБрд░реВ рд╣реЛрдиреЗ рдХрд╛ рд╕рдордп
- рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕реНрдХреНрд░реАрди рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛
- рдЖрдкрдХреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдПрдЪрдЯреАрдЯреАрдкреА/рдПрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдбреЗрдЯрд╛
Firebase рдХрдВрд╕реЛрд▓ рдореЗрдВ, рдЕрдкрдиреА рдкрд░рдлрд╝реЙрд░реНрдореЗрдВрд╕ рдХрд╛ рдбреЗрдЯрд╛ рджреЗрдЦреЗрдВ, рдЯреНрд░реИрдХ рдХрд░реЗрдВ, рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВ.
рдЕрдкрдиреЗ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХреБрдЫ рдЯрд╛рд╕реНрдХ рдпрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд▓рд┐рдП рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдЬреЛрдбрд╝реЗрдВ. рдЗрд╕рдХреЗ рд▓рд┐рдП, рдХрд╕реНрдЯрдо рдХреЛрдб рдЯреНрд░реЗрд╕ рдХреЛ рдЗрдВрд╕реНрдЯреНрд░реБрдореЗрдВрдЯ рдХрд░реЗрдВ.