910e62b5创建于 1月15日历史提交
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

{{generated_disclaimer}}

// This needs be be before `apply plugin: ChromiumPlugin` because otherwise we
// would not have access to it early enough (inside the ResolutionStrategy
// closure).
// This map is empty when rolling androidx but is generated by
// fetch_all_androidx.py to cache the resolved values of all the '+'
// versions when we are not trying to roll (e.g. when the main project
// imports the androidx subproject).
project.ext.versionCache = [:]
{{version_overrides}}

apply plugin: ChromiumPlugin

repositories {
    google()
    maven {
        // This URL is generated by the fetch_all_androidx.py script.
        url '{{androidx_repository_url}}'
    }
    mavenCentral()
}

dependencies {
    // Note about the configuration names: they are defined in buildSrc/ChromiumPlugin

    compileLatest 'androidx.compose.runtime:runtime-android:+'
    compileLatest 'androidx.compose.material3:material3:+'
    compileLatest 'androidx.compose.ui:ui:+'
    compileLatest 'androidx.compose.ui:ui-text-google-fonts:+'
    compileLatest 'androidx.activity:activity-compose:+'
    compileLatest 'androidx.fragment:fragment-compose:+'
    compileLatest 'androidx.lifecycle:lifecycle-viewmodel-compose:+'

    compileLatest 'androidx.lifecycle:lifecycle-runtime:+'
    compileLatest 'androidx.lifecycle:lifecycle-runtime-ktx:+'
    compileLatest 'androidx.lifecycle:lifecycle-common:+'
    compileLatest 'androidx.lifecycle:lifecycle-common-java8:+'
    compileLatest 'androidx.lifecycle:lifecycle-livedata:+'
    compileLatest 'androidx.lifecycle:lifecycle-livedata-core:+'
    compileLatest 'androidx.lifecycle:lifecycle-service:+'
    compileLatest 'androidx.lifecycle:lifecycle-viewmodel:+'
    compileLatest 'androidx.lifecycle:lifecycle-viewmodel-savedstate:+'

    compileLatest 'androidx.activity:activity:+'
    compileLatest 'androidx.annotation:annotation:+'
    compileLatest 'androidx.annotation:annotation-jvm:+'
    compileLatest 'androidx.appcompat:appcompat:+'
    compileLatest 'androidx.appcompat:appcompat-resources:+'
    compileLatest 'androidx.appsearch:appsearch:+'
    compileLatest 'androidx.appsearch:appsearch-builtin-types:+'
    compileLatest 'androidx.appsearch:appsearch-platform-storage:+'
    compileLatest 'androidx.asynclayoutinflater:asynclayoutinflater:+'
    compileLatest 'androidx.asynclayoutinflater:asynclayoutinflater-appcompat:+'
    compileLatest 'androidx.autofill:autofill:+'
    compileLatest 'androidx.biometric:biometric:+'
    compileLatest 'androidx.browser:browser:+'
    compileLatest 'androidx.cardview:cardview:+'
    compileLatest 'androidx.collection:collection:+'
    compileLatest 'androidx.collection:collection-ktx:+'
    compileLatest 'androidx.concurrent:concurrent-futures:+'
    compileLatest 'androidx.coordinatorlayout:coordinatorlayout:+'
    compileLatest 'androidx.core:core:+'
    compileLatest 'androidx.credentials:credentials:+'
    compileLatest 'androidx.credentials:credentials-play-services-auth:+'
    compileLatest 'androidx.core:core-animation:+'
    compileLatest 'androidx.customview:customview:+'
    compileLatest 'androidx.datastore:datastore-android:+'
    compileLatest 'androidx.datastore:datastore-core:+'
    compileLatest 'androidx.datastore:datastore-preferences:+'
    compileLatest 'androidx.drawerlayout:drawerlayout:+'
    compileLatest 'androidx.dynamicanimation:dynamicanimation:+'
    compileLatest 'androidx.exifinterface:exifinterface:+'
    compileLatest 'androidx.fragment:fragment:+'
    compileLatest 'androidx.gridlayout:gridlayout:+'
    compileLatest 'androidx.interpolator:interpolator:+'
    compileLatest 'androidx.leanback:leanback:+'
    compileLatest 'androidx.leanback:leanback-preference:+'
    compile 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
    compileLatest 'androidx.media:media:+'
    compileLatest 'androidx.mediarouter:mediarouter:+'
    compileLatest 'androidx.navigation:navigation-compose:+'
    compileLatest 'androidx.navigation:navigation-runtime:+'
    compileLatest 'androidx.paging:paging-compose:+'
    compileLatest 'androidx.paging:paging-runtime:+'
    compileLatest 'androidx.pdf:pdf-document-service:+'
    compileLatest 'androidx.pdf:pdf-viewer:+'
    compileLatest 'androidx.pdf:pdf-viewer-fragment:+'
    compileLatest 'androidx.preference:preference:+'
    // Privacy Sandbox is less stable than others. Use only release versions.
    compile 'androidx.privacysandbox.ads:ads-adservices:1.1.0-beta11'
    compile 'androidx.privacysandbox.ads:ads-adservices-java:1.1.0-beta11'
    compileLatest 'androidx.recyclerview:recyclerview:+'
    // TODO(https://crbug.com/359896493): Remove the following dep once rolls
    // succeed again. Deps on it will need to be removed first.
    compileLatest 'androidx.savedstate:savedstate:+'
    compileLatest 'androidx.savedstate:savedstate-android:+'
    compileLatest 'androidx.slidingpanelayout:slidingpanelayout:+'
    compileLatest 'androidx.swiperefreshlayout:swiperefreshlayout:+'
    compileLatest 'androidx.tracing:tracing:+'
    compileLatest 'androidx.tvprovider:tvprovider:+'
    compileLatest 'androidx.vectordrawable:vectordrawable:+'
    compileLatest 'androidx.vectordrawable:vectordrawable-animated:+'
    compileLatest 'androidx.viewpager:viewpager:+'
    compileLatest 'androidx.window:window:+'
    buildCompileLatest 'androidx.window:window-extensions:+'
    buildCompileLatest 'androidx.window.sidecar:sidecar:+'
    compile 'androidx.xr.runtime:runtime:1.0.0-alpha05'
    compile 'androidx.xr.scenecore:scenecore:1.0.0-alpha05'

    // Those are for use by doubledown libraries.
    compileLatest 'androidx.arch.core:core-common:+'
    compileLatest 'androidx.annotation:annotation-experimental:+'
    compileLatest 'androidx.emoji:emoji:+'
    compileLatest 'androidx.room:room-runtime:+'
    compileLatest 'androidx.room:room-runtime-android:+'
    compileLatest 'androidx.transition:transition:+'
    compileLatest 'androidx.viewpager2:viewpager2:+'
    compile 'androidx.legacy:legacy-support-core-utils:1.0.0'
    compileLatest 'androidx.documentfile:documentfile:+'
    compileLatest 'androidx.print:print:+'
    compileLatest 'androidx.sqlite:sqlite-android:+'
    compileLatest 'androidx.concurrent:concurrent-futures-ktx:+'

    compileLatest 'androidx.credentials.registry:registry-provider:+'
    compileLatest 'androidx.credentials.registry:registry-provider-play-services:+'

    String media3Version = '1.2.0'
    compile "androidx.media3:media3-common:${media3Version}"
    compile "androidx.media3:media3-database:${media3Version}"
    compile "androidx.media3:media3-datasource:${media3Version}"
    compile "androidx.media3:media3-decoder:${media3Version}"
    compile "androidx.media3:media3-exoplayer:${media3Version}"
    compile "androidx.media3:media3-extractor:${media3Version}"
    compile "androidx.media3:media3-session:${media3Version}"
    compile "androidx.media3:media3-ui:${media3Version}"

    compile 'androidx.multidex:multidex:2.0.0'
    compileLatest 'androidx.webkit:webkit:+'
    compileLatest 'androidx.constraintlayout:constraintlayout:+'

    // Used by 1p Play Services.
    compile 'androidx.legacy:legacy-support-v4:1.0.0'

    // Used by LeakCanary.
    compileLatest 'androidx.work:work-runtime:+'
    compileLatest 'androidx.work:work-multiprocess:+'

    // testCompile targets have test_only = true.
    androidTestCompileLatest 'androidx.fragment:fragment-testing:+'
    androidTestCompileLatest 'androidx.benchmark:benchmark-macro:+'
    androidTestCompileLatest 'androidx.benchmark:benchmark-macro-junit4:+'
    androidTestCompileLatest 'androidx.benchmark:benchmark-junit4:+'
    androidTestCompileLatest 'androidx.compose.ui:ui-test-android:+'
    androidTestCompileLatest 'androidx.compose.ui:ui-test-junit4:+'
    androidTestCompileLatest 'androidx.compose.ui:ui-test-manifest:+'
    androidTestCompileLatest 'androidx.core:core-animation-testing:+'
    androidTestCompile 'androidx.test:core:1.4.0-rc01'
    androidTestCompile 'androidx.test:monitor:1.4.0-rc01'
    androidTestCompile 'androidx.test:rules:1.2.0'
    androidTestCompile 'androidx.test:runner:1.5.2'
    androidTestCompile 'androidx.test.espresso:espresso-contrib:3.5.1'
    androidTestCompile 'androidx.test.espresso:espresso-core:3.5.1'
    androidTestCompile 'androidx.test.espresso:espresso-intents:3.5.1'
    androidTestCompile 'androidx.test.espresso:espresso-web:3.5.1'
    androidTestCompile 'androidx.test.ext:junit:1.1.1'
    androidTestCompile 'androidx.test.services:storage:1.4.1'
    androidTestCompileLatest 'androidx.test.uiautomator:uiautomator:+'

    // accessibility-test-framework (dependancy of anroidx.espresso) somehow
    // pulls in files from these dependencies without actually depending on
    // them. This breaks some of our assumptions in the code so adding these
    // explicitly to fix the asserts.  Remove when no longer needed.
    androidTestCompile 'org.checkerframework:checker-compat-qual:2.5.5'
    androidTestCompile 'com.google.errorprone:error_prone_annotations:2.3.4'
    androidTestCompile 'com.google.j2objc:j2objc-annotations:1.3'
}


task setUpRepository(type: BuildConfigGenerator) {
    pathToBuildGradle 'third_party/androidx'
    cipdPackagePrefix 'chromium/third_party/androidx'
    internalTargetVisibility = [':*', '//third_party/android_deps:*']
    ignoreDEPS true
    writeBoM true
}