/* * Designed and developed by 2024 skydoves (Jaewoong Eum) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2. * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ plugins { id("skydoves.spotless") id("com.android.test") id("org.jetbrains.kotlin.android") id(libs.plugins.baseline.profile.get().pluginId) } android { namespace = "com.skydoves.gemini.baselineprofile" compileSdk = Configurations.compileSdk defaultConfig { minSdk = 24 targetSdk = Configurations.targetSdk testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } targetProjectPath = ":app" testOptions.managedDevices.devices { maybeCreate("pixel6api31").apply { device = "Pixel 6" apiLevel = 31 systemImageSource = "aosp" } } } // This is the plugin configuration. Everything is optional. Defaults are in the // comments. In this example, you use the GMD added earlier and disable connected devices. baselineProfile { // This specifies the managed devices to use that you run the tests on. The default // is none. managedDevices += "pixel6api31" // This enables using connected devices to generate profiles. The default is true. // When using connected devices, they must be rooted or API 33 and higher. useConnectedDevices = false } dependencies { implementation(libs.androidx.test.runner) implementation(libs.androidx.test.uiautomator) implementation(libs.androidx.benchmark.macro) implementation(libs.androidx.profileinstaller) }