| /* |
| * Copyright 2018 The Android Open Source Project |
| * |
| * 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.0 |
| * |
| * 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. |
| */ |
| |
| import androidx.build.SupportConfig |
| import static androidx.build.dependencies.DependenciesKt.CHECKER_FRAMEWORK |
| |
| buildscript { |
| // TODO: Remove this when this test app no longer depends on 1.0.0 of vectordrawable-animated. |
| // vectordrawable and vectordrawable-animated were accidentally using the same package name |
| // which is no longer valid in namespaced resource world. |
| project.ext['android.uniquePackageNames'] = false |
| } |
| |
| plugins { |
| id("AndroidXPlugin") |
| id("com.android.application") |
| } |
| |
| // replace all tests etc with empty task, so we don't run anything |
| // it is more effective then task.enabled = false, because we avoid executing deps as well |
| def reentrance = false |
| project.tasks.whenTaskAdded { task -> |
| if (task instanceof org.gradle.api.tasks.testing.Test |
| || task.name.startsWith("assemble") |
| || task.name == "lint" |
| || task.name == "transformDexArchiveWithExternalLibsDexMergerForPublicDebug" |
| || task.name == "transformResourcesWithMergeJavaResForPublicDebug" |
| || task.name == "checkPublicDebugDuplicateClasses") { |
| if (!reentrance) { |
| reentrance = true |
| project.tasks.replace(task.name) |
| reentrance = false |
| } |
| } |
| } |
| |
| // Also replace some tasks that will have already been created (and not trigger `whenTaskAdded`) |
| project.tasks.replace("lint") |
| |
| android { |
| defaultConfig { |
| minSdkVersion SupportConfig.TARGET_SDK_VERSION |
| javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = false |
| } |
| |
| sourceSets { |
| main { |
| manifest.srcFile "AndroidManifest.xml" |
| } |
| } |
| flavorDimensions "library-group" |
| } |
| |
| dependencies { |
| /* |
| * This is needed to build Public Docs for media2:1.0.0-alpha04 and higher |
| * Our current guess is that Doclava isn't checking which dependencies are unique to |
| * the compileOnly configuration, since they're not supposed to be needed at runtime. |
| */ |
| compileOnly(CHECKER_FRAMEWORK) |
| } |
| |