Чтобы создать Baseline Profiles для библиотеки, используйте плагин Baseline Profile Gradle .
Для создания базовых профилей библиотеки используются три модуля:
- Модуль примера приложения: содержит пример приложения, использующего вашу библиотеку.
- Модуль библиотеки: модуль, для которого вы хотите создать профиль.
- Модуль базового профиля: тестовый модуль, который генерирует базовые профили.
Чтобы создать базовый профиль для библиотеки, выполните следующие действия:
- Создайте новый модуль
com.android.test
, например:baseline-profile
. - Настройте файл
build.gradle.kts
для модуля:baseline-profile
. Конфигурация по существу такая же, как и для приложения , но обязательно установитеtargetProjectPath
в пример модуля приложения. - Создайте тест базового профиля в тестовом модуле
:baseline-profile
. Это должно быть специфично для примера приложения и должно использовать все функции библиотеки. - Обновите конфигурацию в файле
build.gradle.ktss
в библиотечном модуле, например:library
. - Примените плагин
androidx.baselineprofile
. - Добавьте зависимость
baselineProfile
в модуль:baseline-profile
. - Примените нужную конфигурацию потребительского плагина, как показано в следующем примере.
- Добавьте плагин
androidx.baselineprofile
в файлbuild.gradle.kts
в модуле приложения:sample-app
.Котлин
plugins { ... id("androidx.baselineprofile") }
классный
plugins { ... id 'androidx.baselineprofile' }
- Создайте профиль, выполнив следующий код:
./gradlew :library:generateBaselineProfile
.
Котлин
plugins { id("com.android.library") id("androidx.baselineprofile") } android { ... } dependencies { ... // Add a baselineProfile dependency to the `:baseline-profile` module. baselineProfile(project(":baseline-profile")) } // Baseline Profile Gradle plugin configuration. baselineProfile { // Filters the generated profile rules. // This example keeps the classes in the `com.library` package all its subpackages. filter { include "com.mylibrary.**" } }
классный
plugins { id 'com.android.library' id 'androidx.baselineprofile' } android { ... } dependencies { ... // Add a baselineProfile dependency to the `:baseline-profile` module. baselineProfile ':baseline-profile' } // Baseline Profile Gradle plugin configuration. baselineProfile { // Filters the generated profile rules. // This example keeps the classes in the `com.library` package all its subpackages. filter { include 'com.mylibrary.**' } }
В конце задачи создания базовый профиль сохраняется в library/src/main/generated/baselineProfiles
.