Android NDK开发详解之调试和性能分析的为库创建基准配置文件
如需为库创建基准配置文件,请使用基准配置文件 Gradle 插件。
为库创建基准配置文件时涉及以下三个模块:
示例应用模块:包含使用库的示例应用。
库模块:要为库生成配置文件的模块。
基准配置文件模块:生成基准配置文件的测试模块。
如需为库生成基准配置文件,请执行以下步骤:
1、创建一个新的 com.android.test 模块,例如 :baseline-profile。
2、为 :baseline-profile 模块配置 build.gradle.kts 文件。该配置与应用的配置基本相同,但请务必将 targetProjectPath 设为示例应用模块。
3、在 :baseline-profile 测试模块中创建基准配置文件测试。此测试需要特定于示例应用,并且必须使用该库的所有功能。
4、更新库模块中 build.gradle.ktss 文件中的配置,例如 :library。
a、应用插件 androidx.baselineprofile。
b、将 baselineProfile 依赖项添加到 :baseline-profile 模块。
c、应用您需要的使用方插件配置,如以下示例所示。
Kotlin
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.**"
}
}
Groovy
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.**"
}
}
5、将 androidx.baselineprofile 插件添加到应用模块 :sample-app 中的 build.gradle.kts 文件。
Kotlin
plugins {
...
id("androidx.baselineprofile")
}
Groovy
plugins {
...
id("androidx.baselineprofile")
}
6、运行以下代码,生成配置文件:./gradlew :library:generateBaselineProfile。
在生成任务结束时,基准配置文件会存储在 library/src/main/generated/baselineProfiles 中。