diff --git a/dev/benchmarks/complex_layout/android/app/build.gradle b/dev/benchmarks/complex_layout/android/app/build.gradle index 3ee631d552..fd4944e650 100644 --- a/dev/benchmarks/complex_layout/android/app/build.gradle +++ b/dev/benchmarks/complex_layout/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/benchmarks/complex_layout/android/build.gradle b/dev/benchmarks/complex_layout/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/complex_layout/android/build.gradle +++ b/dev/benchmarks/complex_layout/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/complex_layout/android/gradle.properties b/dev/benchmarks/complex_layout/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/complex_layout/android/gradle.properties +++ b/dev/benchmarks/complex_layout/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/complex_layout/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/complex_layout/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/benchmarks/complex_layout/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/complex_layout/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/benchmarks/macrobenchmarks/android/app/build.gradle b/dev/benchmarks/macrobenchmarks/android/app/build.gradle index 1080f42bd2..057fe581de 100644 --- a/dev/benchmarks/macrobenchmarks/android/app/build.gradle +++ b/dev/benchmarks/macrobenchmarks/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "com.example.macrobenchmarks" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/dev/benchmarks/macrobenchmarks/android/build.gradle b/dev/benchmarks/macrobenchmarks/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/macrobenchmarks/android/build.gradle +++ b/dev/benchmarks/macrobenchmarks/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/macrobenchmarks/android/gradle.properties b/dev/benchmarks/macrobenchmarks/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/macrobenchmarks/android/gradle.properties +++ b/dev/benchmarks/macrobenchmarks/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/macrobenchmarks/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/macrobenchmarks/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/benchmarks/macrobenchmarks/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/macrobenchmarks/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/benchmarks/microbenchmarks/android/app/build.gradle b/dev/benchmarks/microbenchmarks/android/app/build.gradle index 3ee631d552..fd4944e650 100644 --- a/dev/benchmarks/microbenchmarks/android/app/build.gradle +++ b/dev/benchmarks/microbenchmarks/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/benchmarks/microbenchmarks/android/build.gradle b/dev/benchmarks/microbenchmarks/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/microbenchmarks/android/build.gradle +++ b/dev/benchmarks/microbenchmarks/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/microbenchmarks/android/gradle.properties b/dev/benchmarks/microbenchmarks/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/microbenchmarks/android/gradle.properties +++ b/dev/benchmarks/microbenchmarks/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/microbenchmarks/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/microbenchmarks/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/benchmarks/microbenchmarks/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/microbenchmarks/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/benchmarks/platform_views_layout/android/app/build.gradle b/dev/benchmarks/platform_views_layout/android/app/build.gradle index 3ee631d552..fd4944e650 100644 --- a/dev/benchmarks/platform_views_layout/android/app/build.gradle +++ b/dev/benchmarks/platform_views_layout/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/benchmarks/platform_views_layout/android/build.gradle b/dev/benchmarks/platform_views_layout/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/platform_views_layout/android/build.gradle +++ b/dev/benchmarks/platform_views_layout/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/platform_views_layout/android/gradle.properties b/dev/benchmarks/platform_views_layout/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/platform_views_layout/android/gradle.properties +++ b/dev/benchmarks/platform_views_layout/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/platform_views_layout/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/platform_views_layout/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/benchmarks/platform_views_layout/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/platform_views_layout/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/benchmarks/platform_views_layout_hybrid_composition/android/app/build.gradle b/dev/benchmarks/platform_views_layout_hybrid_composition/android/app/build.gradle index 3ee631d552..fd4944e650 100644 --- a/dev/benchmarks/platform_views_layout_hybrid_composition/android/app/build.gradle +++ b/dev/benchmarks/platform_views_layout_hybrid_composition/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/benchmarks/platform_views_layout_hybrid_composition/android/build.gradle b/dev/benchmarks/platform_views_layout_hybrid_composition/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/platform_views_layout_hybrid_composition/android/build.gradle +++ b/dev/benchmarks/platform_views_layout_hybrid_composition/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle.properties b/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle.properties +++ b/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/platform_views_layout_hybrid_composition/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/benchmarks/test_apps/stocks/android/app/build.gradle b/dev/benchmarks/test_apps/stocks/android/app/build.gradle index 7717a4047b..162e0ed2f1 100644 --- a/dev/benchmarks/test_apps/stocks/android/app/build.gradle +++ b/dev/benchmarks/test_apps/stocks/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.stocks" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/benchmarks/test_apps/stocks/android/build.gradle b/dev/benchmarks/test_apps/stocks/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/benchmarks/test_apps/stocks/android/build.gradle +++ b/dev/benchmarks/test_apps/stocks/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/benchmarks/test_apps/stocks/android/gradle.properties b/dev/benchmarks/test_apps/stocks/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/benchmarks/test_apps/stocks/android/gradle.properties +++ b/dev/benchmarks/test_apps/stocks/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/benchmarks/test_apps/stocks/android/gradle/wrapper/gradle-wrapper.properties b/dev/benchmarks/test_apps/stocks/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100755 --- a/dev/benchmarks/test_apps/stocks/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/benchmarks/test_apps/stocks/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/devicelab/bin/tasks/gradle_plugin_light_apk_test.dart b/dev/devicelab/bin/tasks/gradle_plugin_light_apk_test.dart index f33e133e19..20b2b4157d 100644 --- a/dev/devicelab/bin/tasks/gradle_plugin_light_apk_test.dart +++ b/dev/devicelab/bin/tasks/gradle_plugin_light_apk_test.dart @@ -249,7 +249,7 @@ Future main() async { output.contains('at org.gradle')) throw failure( 'Gradle output should not contain stacktrace', result); - if (!output.contains('Build failed') || !output.contains('builTypes')) + if (!output.contains('Build failed')) throw failure( 'Gradle output should contain a readable error message', result); @@ -285,11 +285,11 @@ Future main() async { throw failure( 'flutter build apk should fail when Gradle does', result); final String output = '${result.stdout}\n${result.stderr}'; - if (!output.contains('Build failed') || !output.contains('builTypes')) + if (!output.contains('Build failed')) throw failure( 'flutter build apk output should contain a readable Gradle error message', result); - if (hasMultipleOccurrences(output, 'builTypes')) + if (hasMultipleOccurrences(output, 'Build failed')) throw failure( 'flutter build apk should not invoke Gradle repeatedly on error', result); diff --git a/dev/integration_tests/abstract_method_smoke_test/android/app/build.gradle b/dev/integration_tests/abstract_method_smoke_test/android/app/build.gradle index d0f73f3b63..63b11d05c4 100644 --- a/dev/integration_tests/abstract_method_smoke_test/android/app/build.gradle +++ b/dev/integration_tests/abstract_method_smoke_test/android/app/build.gradle @@ -30,16 +30,12 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' } - lintOptions { - disable 'InvalidPackage' - } - compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 @@ -49,7 +45,7 @@ android { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.abstract_method_smoke_test" minSdkVersion 21 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/abstract_method_smoke_test/android/build.gradle b/dev/integration_tests/abstract_method_smoke_test/android/build.gradle index 1c2d2db3e0..4b2ffebed5 100644 --- a/dev/integration_tests/abstract_method_smoke_test/android/build.gradle +++ b/dev/integration_tests/abstract_method_smoke_test/android/build.gradle @@ -10,7 +10,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/dev/integration_tests/abstract_method_smoke_test/android/gradle.properties b/dev/integration_tests/abstract_method_smoke_test/android/gradle.properties index d2032bce8b..08f2b5f91b 100644 --- a/dev/integration_tests/abstract_method_smoke_test/android/gradle.properties +++ b/dev/integration_tests/abstract_method_smoke_test/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.enableJetifier=true android.useAndroidX=true -android.enableR8=true diff --git a/dev/integration_tests/abstract_method_smoke_test/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/abstract_method_smoke_test/android/gradle/wrapper/gradle-wrapper.properties index 9ec7236c63..bc6a58afdd 100644 --- a/dev/integration_tests/abstract_method_smoke_test/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/abstract_method_smoke_test/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_custom_host_app/SampleApp/build.gradle b/dev/integration_tests/android_custom_host_app/SampleApp/build.gradle index a320b982e0..c408582468 100644 --- a/dev/integration_tests/android_custom_host_app/SampleApp/build.gradle +++ b/dev/integration_tests/android_custom_host_app/SampleApp/build.gradle @@ -5,7 +5,7 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 29 + compileSdkVersion 30 compileOptions { sourceCompatibility 1.8 @@ -15,7 +15,7 @@ android { defaultConfig { applicationId "io.flutter.add2app" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/android_custom_host_app/build.gradle b/dev/integration_tests/android_custom_host_app/build.gradle index fdd798e8aa..40d23f362c 100644 --- a/dev/integration_tests/android_custom_host_app/build.gradle +++ b/dev/integration_tests/android_custom_host_app/build.gradle @@ -8,7 +8,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_custom_host_app/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_custom_host_app/gradle/wrapper/gradle-wrapper.properties index f6c8f50ffd..74b453cbe7 100644 --- a/dev/integration_tests/android_custom_host_app/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_custom_host_app/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_embedding_v2_smoke_test/android/app/build.gradle b/dev/integration_tests/android_embedding_v2_smoke_test/android/app/build.gradle index 8579aa839a..65d0f8f0a6 100644 --- a/dev/integration_tests/android_embedding_v2_smoke_test/android/app/build.gradle +++ b/dev/integration_tests/android_embedding_v2_smoke_test/android/app/build.gradle @@ -30,21 +30,17 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' } - lintOptions { - disable 'InvalidPackage' - } - defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.android_embedding_v2_smoke_test" minSdkVersion 21 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/android_embedding_v2_smoke_test/android/build.gradle b/dev/integration_tests/android_embedding_v2_smoke_test/android/build.gradle index 1c2d2db3e0..4b2ffebed5 100644 --- a/dev/integration_tests/android_embedding_v2_smoke_test/android/build.gradle +++ b/dev/integration_tests/android_embedding_v2_smoke_test/android/build.gradle @@ -10,7 +10,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle.properties b/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle.properties index 38c8d4544f..94adc3a3f9 100644 --- a/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle.properties +++ b/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M -android.enableR8=true android.useAndroidX=true android.enableJetifier=true diff --git a/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_embedding_v2_smoke_test/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_host_app_v2_embedding/app/build.gradle b/dev/integration_tests/android_host_app_v2_embedding/app/build.gradle index 1a102db3ed..d3d66909ff 100644 --- a/dev/integration_tests/android_host_app_v2_embedding/app/build.gradle +++ b/dev/integration_tests/android_host_app_v2_embedding/app/build.gradle @@ -5,7 +5,7 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 29 + compileSdkVersion 30 compileOptions { sourceCompatibility 1.8 @@ -15,7 +15,7 @@ android { defaultConfig { applicationId "io.flutter.add2app" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/android_host_app_v2_embedding/build.gradle b/dev/integration_tests/android_host_app_v2_embedding/build.gradle index fdd798e8aa..40d23f362c 100644 --- a/dev/integration_tests/android_host_app_v2_embedding/build.gradle +++ b/dev/integration_tests/android_host_app_v2_embedding/build.gradle @@ -8,7 +8,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_host_app_v2_embedding/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_host_app_v2_embedding/gradle/wrapper/gradle-wrapper.properties index f6c8f50ffd..74b453cbe7 100644 --- a/dev/integration_tests/android_host_app_v2_embedding/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_host_app_v2_embedding/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_semantics_testing/android/app/build.gradle b/dev/integration_tests/android_semantics_testing/android/app/build.gradle index 682e7ffa5e..a2f4fa827e 100644 --- a/dev/integration_tests/android_semantics_testing/android/app/build.gradle +++ b/dev/integration_tests/android_semantics_testing/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/integration_tests/android_semantics_testing/android/build.gradle b/dev/integration_tests/android_semantics_testing/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/android_semantics_testing/android/build.gradle +++ b/dev/integration_tests/android_semantics_testing/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_semantics_testing/android/gradle.properties b/dev/integration_tests/android_semantics_testing/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/android_semantics_testing/android/gradle.properties +++ b/dev/integration_tests/android_semantics_testing/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/android_semantics_testing/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_semantics_testing/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100755 --- a/dev/integration_tests/android_semantics_testing/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_semantics_testing/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/app/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/app/build.gradle index 0f0ba57265..5bbbdf1790 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/app/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "io.flutter.splash_screen_kitchen_sink" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/build.gradle index 7e89070e49..c2c4160adf 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle.properties b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_kitchen_sink/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/app/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/app/build.gradle index 6556ef5f4d..1b21eb358c 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/app/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "io.flutter.splash_screen_load_rotate" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/build.gradle index 7e89070e49..c2c4160adf 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle.properties b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_load_rotate/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/app/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/app/build.gradle index f8c1c69d3a..03dcb8ec55 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/app/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "io.flutter.splash_screen_trans_rotate" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/build.gradle b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/build.gradle index 7e89070e49..c2c4160adf 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/build.gradle +++ b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle.properties b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_splash_screens/splash_screen_trans_rotate/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/android_views/android/app/build.gradle b/dev/integration_tests/android_views/android/app/build.gradle index eed0bcb9b7..d85ff893eb 100644 --- a/dev/integration_tests/android_views/android/app/build.gradle +++ b/dev/integration_tests/android_views/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "io.flutter.integration.platformviews" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/android_views/android/build.gradle b/dev/integration_tests/android_views/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/android_views/android/build.gradle +++ b/dev/integration_tests/android_views/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/android_views/android/gradle.properties b/dev/integration_tests/android_views/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/android_views/android/gradle.properties +++ b/dev/integration_tests/android_views/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/android_views/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/android_views/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/android_views/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/android_views/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/channels/android/app/build.gradle b/dev/integration_tests/channels/android/app/build.gradle index 682e7ffa5e..a2f4fa827e 100644 --- a/dev/integration_tests/channels/android/app/build.gradle +++ b/dev/integration_tests/channels/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/integration_tests/channels/android/build.gradle b/dev/integration_tests/channels/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/channels/android/build.gradle +++ b/dev/integration_tests/channels/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/channels/android/gradle.properties b/dev/integration_tests/channels/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/channels/android/gradle.properties +++ b/dev/integration_tests/channels/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/channels/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/channels/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100755 --- a/dev/integration_tests/channels/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/channels/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/external_ui/android/app/build.gradle b/dev/integration_tests/external_ui/android/app/build.gradle index 7171f2b866..9880899d50 100644 --- a/dev/integration_tests/external_ui/android/app/build.gradle +++ b/dev/integration_tests/external_ui/android/app/build.gradle @@ -19,16 +19,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.externalui" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/external_ui/android/build.gradle b/dev/integration_tests/external_ui/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/external_ui/android/build.gradle +++ b/dev/integration_tests/external_ui/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/external_ui/android/gradle.properties b/dev/integration_tests/external_ui/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/external_ui/android/gradle.properties +++ b/dev/integration_tests/external_ui/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/external_ui/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/external_ui/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/external_ui/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/external_ui/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/flavors/android/app/build.gradle b/dev/integration_tests/flavors/android/app/build.gradle index 9a04242f94..d54de5f780 100644 --- a/dev/integration_tests/flavors/android/app/build.gradle +++ b/dev/integration_tests/flavors/android/app/build.gradle @@ -19,16 +19,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "com.yourcompany.flavors" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/flavors/android/build.gradle b/dev/integration_tests/flavors/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/flavors/android/build.gradle +++ b/dev/integration_tests/flavors/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/flavors/android/gradle.properties b/dev/integration_tests/flavors/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/flavors/android/gradle.properties +++ b/dev/integration_tests/flavors/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/flavors/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/flavors/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/flavors/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/flavors/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/flutter_driver_screenshot_test/android/app/build.gradle b/dev/integration_tests/flutter_driver_screenshot_test/android/app/build.gradle index 8c12664b58..08378dcdf9 100644 --- a/dev/integration_tests/flutter_driver_screenshot_test/android/app/build.gradle +++ b/dev/integration_tests/flutter_driver_screenshot_test/android/app/build.gradle @@ -30,21 +30,17 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' } - lintOptions { - disable 'InvalidPackage' - } - defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.screenshot_tests" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/flutter_driver_screenshot_test/android/build.gradle b/dev/integration_tests/flutter_driver_screenshot_test/android/build.gradle index 1c2d2db3e0..4b2ffebed5 100644 --- a/dev/integration_tests/flutter_driver_screenshot_test/android/build.gradle +++ b/dev/integration_tests/flutter_driver_screenshot_test/android/build.gradle @@ -10,7 +10,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/dev/integration_tests/flutter_driver_screenshot_test/android/gradle.properties b/dev/integration_tests/flutter_driver_screenshot_test/android/gradle.properties index 38c8d4544f..94adc3a3f9 100644 --- a/dev/integration_tests/flutter_driver_screenshot_test/android/gradle.properties +++ b/dev/integration_tests/flutter_driver_screenshot_test/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M -android.enableR8=true android.useAndroidX=true android.enableJetifier=true diff --git a/dev/integration_tests/flutter_driver_screenshot_test/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/flutter_driver_screenshot_test/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/flutter_driver_screenshot_test/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/flutter_driver_screenshot_test/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/flutter_gallery/android/app/build.gradle b/dev/integration_tests/flutter_gallery/android/app/build.gradle index 6476fe6bae..68ea4afd9f 100644 --- a/dev/integration_tests/flutter_gallery/android/app/build.gradle +++ b/dev/integration_tests/flutter_gallery/android/app/build.gradle @@ -40,16 +40,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.demo.gallery" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/dev/integration_tests/flutter_gallery/android/build.gradle b/dev/integration_tests/flutter_gallery/android/build.gradle index 7adce49861..ae150cd300 100644 --- a/dev/integration_tests/flutter_gallery/android/build.gradle +++ b/dev/integration_tests/flutter_gallery/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/flutter_gallery/android/gradle.properties b/dev/integration_tests/flutter_gallery/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/flutter_gallery/android/gradle.properties +++ b/dev/integration_tests/flutter_gallery/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/flutter_gallery/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/flutter_gallery/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/flutter_gallery/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/flutter_gallery/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/gradle_deprecated_settings/android/app/build.gradle b/dev/integration_tests/gradle_deprecated_settings/android/app/build.gradle index a66c2b2d39..13f7a3f8c1 100644 --- a/dev/integration_tests/gradle_deprecated_settings/android/app/build.gradle +++ b/dev/integration_tests/gradle_deprecated_settings/android/app/build.gradle @@ -19,12 +19,9 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { + // This test cannot use 30 due to https://github.com/flutter/flutter/issues/70897 compileSdkVersion 29 - lintOptions { - disable 'InvalidPackage' - } - defaultConfig { applicationId "com.yourcompany.flavors" minSdkVersion 21 diff --git a/dev/integration_tests/gradle_deprecated_settings/android/app/src/main/java/com/yourcompany/flavors/MainActivity.java b/dev/integration_tests/gradle_deprecated_settings/android/app/src/main/java/com/yourcompany/flavors/MainActivity.java index 7e6d4fe711..24f93ca13d 100644 --- a/dev/integration_tests/gradle_deprecated_settings/android/app/src/main/java/com/yourcompany/flavors/MainActivity.java +++ b/dev/integration_tests/gradle_deprecated_settings/android/app/src/main/java/com/yourcompany/flavors/MainActivity.java @@ -7,8 +7,6 @@ package com.yourcompany.flavors; import android.os.Bundle; import io.flutter.app.FlutterActivity; -import io.flutter.plugin.common.MethodCall; -import io.flutter.plugin.common.MethodChannel; import io.flutter.plugins.GeneratedPluginRegistrant; public class MainActivity extends FlutterActivity { @@ -16,11 +14,5 @@ public class MainActivity extends FlutterActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); GeneratedPluginRegistrant.registerWith(this); - new MethodChannel(getFlutterView(), "flavor").setMethodCallHandler(new MethodChannel.MethodCallHandler() { - @Override - public void onMethodCall(MethodCall methodCall, MethodChannel.Result result) { - result.success(BuildConfig.FLAVOR); - } - }); } } diff --git a/dev/integration_tests/gradle_deprecated_settings/android/build.gradle b/dev/integration_tests/gradle_deprecated_settings/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/gradle_deprecated_settings/android/build.gradle +++ b/dev/integration_tests/gradle_deprecated_settings/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/gradle_deprecated_settings/android/gradle.properties b/dev/integration_tests/gradle_deprecated_settings/android/gradle.properties index a6738207fd..4d3226abc2 100644 --- a/dev/integration_tests/gradle_deprecated_settings/android/gradle.properties +++ b/dev/integration_tests/gradle_deprecated_settings/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true -android.enableJetifier=true -android.enableR8=true +android.enableJetifier=true \ No newline at end of file diff --git a/dev/integration_tests/gradle_deprecated_settings/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/gradle_deprecated_settings/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/gradle_deprecated_settings/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/gradle_deprecated_settings/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/hybrid_android_views/android/app/build.gradle b/dev/integration_tests/hybrid_android_views/android/app/build.gradle index eed0bcb9b7..d85ff893eb 100644 --- a/dev/integration_tests/hybrid_android_views/android/app/build.gradle +++ b/dev/integration_tests/hybrid_android_views/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "io.flutter.integration.platformviews" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/hybrid_android_views/android/build.gradle b/dev/integration_tests/hybrid_android_views/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/hybrid_android_views/android/build.gradle +++ b/dev/integration_tests/hybrid_android_views/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/hybrid_android_views/android/gradle.properties b/dev/integration_tests/hybrid_android_views/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/hybrid_android_views/android/gradle.properties +++ b/dev/integration_tests/hybrid_android_views/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/hybrid_android_views/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/hybrid_android_views/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/hybrid_android_views/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/hybrid_android_views/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/image_loading/android/app/bin/build.gradle b/dev/integration_tests/image_loading/android/app/bin/build.gradle index 682e7ffa5e..a2f4fa827e 100644 --- a/dev/integration_tests/image_loading/android/app/bin/build.gradle +++ b/dev/integration_tests/image_loading/android/app/bin/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/integration_tests/image_loading/android/app/build.gradle b/dev/integration_tests/image_loading/android/app/build.gradle index 682e7ffa5e..a2f4fa827e 100644 --- a/dev/integration_tests/image_loading/android/app/build.gradle +++ b/dev/integration_tests/image_loading/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/integration_tests/image_loading/android/build.gradle b/dev/integration_tests/image_loading/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/image_loading/android/build.gradle +++ b/dev/integration_tests/image_loading/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/image_loading/android/gradle.properties b/dev/integration_tests/image_loading/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/image_loading/android/gradle.properties +++ b/dev/integration_tests/image_loading/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/image_loading/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/image_loading/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100755 --- a/dev/integration_tests/image_loading/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/image_loading/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/module_host_with_custom_build_v2_embedding/app/build.gradle b/dev/integration_tests/module_host_with_custom_build_v2_embedding/app/build.gradle index 52826054cc..4b21d20dae 100644 --- a/dev/integration_tests/module_host_with_custom_build_v2_embedding/app/build.gradle +++ b/dev/integration_tests/module_host_with_custom_build_v2_embedding/app/build.gradle @@ -5,7 +5,7 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 29 + compileSdkVersion 30 compileOptions { sourceCompatibility 1.8 targetCompatibility 1.8 @@ -13,7 +13,7 @@ android { defaultConfig { applicationId "io.flutter.addtoapp" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/module_host_with_custom_build_v2_embedding/build.gradle b/dev/integration_tests/module_host_with_custom_build_v2_embedding/build.gradle index afef97c049..40d23f362c 100644 --- a/dev/integration_tests/module_host_with_custom_build_v2_embedding/build.gradle +++ b/dev/integration_tests/module_host_with_custom_build_v2_embedding/build.gradle @@ -8,7 +8,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/module_host_with_custom_build_v2_embedding/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/module_host_with_custom_build_v2_embedding/gradle/wrapper/gradle-wrapper.properties index f6c8f50ffd..74b453cbe7 100644 --- a/dev/integration_tests/module_host_with_custom_build_v2_embedding/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/module_host_with_custom_build_v2_embedding/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/non_nullable/android/app/build.gradle b/dev/integration_tests/non_nullable/android/app/build.gradle index c6d21501a3..88705de03b 100644 --- a/dev/integration_tests/non_nullable/android/app/build.gradle +++ b/dev/integration_tests/non_nullable/android/app/build.gradle @@ -30,21 +30,17 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' } - lintOptions { - disable 'InvalidPackage' - } - defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.non_nullable" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/integration_tests/non_nullable/android/build.gradle b/dev/integration_tests/non_nullable/android/build.gradle index 1c2d2db3e0..4b2ffebed5 100644 --- a/dev/integration_tests/non_nullable/android/build.gradle +++ b/dev/integration_tests/non_nullable/android/build.gradle @@ -10,7 +10,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/dev/integration_tests/non_nullable/android/gradle.properties b/dev/integration_tests/non_nullable/android/gradle.properties index 38c8d4544f..94adc3a3f9 100644 --- a/dev/integration_tests/non_nullable/android/gradle.properties +++ b/dev/integration_tests/non_nullable/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M -android.enableR8=true android.useAndroidX=true android.enableJetifier=true diff --git a/dev/integration_tests/non_nullable/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/non_nullable/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/non_nullable/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/non_nullable/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/platform_interaction/android/app/build.gradle b/dev/integration_tests/platform_interaction/android/app/build.gradle index 682e7ffa5e..a2f4fa827e 100644 --- a/dev/integration_tests/platform_interaction/android/app/build.gradle +++ b/dev/integration_tests/platform_interaction/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "0.0.1" } diff --git a/dev/integration_tests/platform_interaction/android/build.gradle b/dev/integration_tests/platform_interaction/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/platform_interaction/android/build.gradle +++ b/dev/integration_tests/platform_interaction/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/platform_interaction/android/gradle.properties b/dev/integration_tests/platform_interaction/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/platform_interaction/android/gradle.properties +++ b/dev/integration_tests/platform_interaction/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/platform_interaction/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/platform_interaction/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100755 --- a/dev/integration_tests/platform_interaction/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/platform_interaction/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/release_smoke_test/android/app/build.gradle b/dev/integration_tests/release_smoke_test/android/app/build.gradle index 03b459e452..ed4df287a1 100644 --- a/dev/integration_tests/release_smoke_test/android/app/build.gradle +++ b/dev/integration_tests/release_smoke_test/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.release_smoke_test" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/dev/integration_tests/release_smoke_test/android/build.gradle b/dev/integration_tests/release_smoke_test/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/release_smoke_test/android/build.gradle +++ b/dev/integration_tests/release_smoke_test/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/release_smoke_test/android/gradle.properties b/dev/integration_tests/release_smoke_test/android/gradle.properties index b1e161accd..d1ab454e54 100644 --- a/dev/integration_tests/release_smoke_test/android/gradle.properties +++ b/dev/integration_tests/release_smoke_test/android/gradle.properties @@ -1,6 +1,5 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true android.useAndroidX=true android.enableJetifier=true diff --git a/dev/integration_tests/release_smoke_test/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/release_smoke_test/android/gradle/wrapper/gradle-wrapper.properties index 9ec7236c63..bc6a58afdd 100644 --- a/dev/integration_tests/release_smoke_test/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/release_smoke_test/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/integration_tests/ui/android/app/build.gradle b/dev/integration_tests/ui/android/app/build.gradle index 77ae3e7814..a1849afc0a 100644 --- a/dev/integration_tests/ui/android/app/build.gradle +++ b/dev/integration_tests/ui/android/app/build.gradle @@ -19,15 +19,11 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/dev/integration_tests/ui/android/build.gradle b/dev/integration_tests/ui/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/dev/integration_tests/ui/android/build.gradle +++ b/dev/integration_tests/ui/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/dev/integration_tests/ui/android/gradle.properties b/dev/integration_tests/ui/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/dev/integration_tests/ui/android/gradle.properties +++ b/dev/integration_tests/ui/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/dev/integration_tests/ui/android/gradle/wrapper/gradle-wrapper.properties b/dev/integration_tests/ui/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/integration_tests/ui/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/integration_tests/ui/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/dev/manual_tests/android/app/build.gradle b/dev/manual_tests/android/app/build.gradle index ec0821345e..6b4f3fd225 100644 --- a/dev/manual_tests/android/app/build.gradle +++ b/dev/manual_tests/android/app/build.gradle @@ -30,7 +30,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -44,7 +44,7 @@ android { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.manual_tests" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/dev/manual_tests/android/build.gradle b/dev/manual_tests/android/build.gradle index 1c2d2db3e0..4b2ffebed5 100644 --- a/dev/manual_tests/android/build.gradle +++ b/dev/manual_tests/android/build.gradle @@ -10,7 +10,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/dev/manual_tests/android/gradle.properties b/dev/manual_tests/android/gradle.properties index 38c8d4544f..94adc3a3f9 100644 --- a/dev/manual_tests/android/gradle.properties +++ b/dev/manual_tests/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M -android.enableR8=true android.useAndroidX=true android.enableJetifier=true diff --git a/dev/manual_tests/android/gradle/wrapper/gradle-wrapper.properties b/dev/manual_tests/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/dev/manual_tests/android/gradle/wrapper/gradle-wrapper.properties +++ b/dev/manual_tests/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/flutter_view/android/app/build.gradle b/examples/flutter_view/android/app/build.gradle index 98ae98adf5..364d054fea 100644 --- a/examples/flutter_view/android/app/build.gradle +++ b/examples/flutter_view/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.flutter_view" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/examples/flutter_view/android/build.gradle b/examples/flutter_view/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/examples/flutter_view/android/build.gradle +++ b/examples/flutter_view/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/flutter_view/android/gradle.properties b/examples/flutter_view/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/flutter_view/android/gradle.properties +++ b/examples/flutter_view/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/flutter_view/android/gradle/wrapper/gradle-wrapper.properties b/examples/flutter_view/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/examples/flutter_view/android/gradle/wrapper/gradle-wrapper.properties +++ b/examples/flutter_view/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/hello_world/android/app/build.gradle b/examples/hello_world/android/app/build.gradle index 45d8d41415..9741e1cbc7 100644 --- a/examples/hello_world/android/app/build.gradle +++ b/examples/hello_world/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.hello_world" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/examples/hello_world/android/build.gradle b/examples/hello_world/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/examples/hello_world/android/build.gradle +++ b/examples/hello_world/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/hello_world/android/gradle.properties b/examples/hello_world/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/hello_world/android/gradle.properties +++ b/examples/hello_world/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/hello_world/android/gradle/wrapper/gradle-wrapper.properties b/examples/hello_world/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/examples/hello_world/android/gradle/wrapper/gradle-wrapper.properties +++ b/examples/hello_world/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/image_list/android/app/build.gradle b/examples/image_list/android/app/build.gradle index 447218a3ef..df205c3821 100644 --- a/examples/image_list/android/app/build.gradle +++ b/examples/image_list/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.image_list" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/examples/image_list/android/build.gradle b/examples/image_list/android/build.gradle index 7e89070e49..c2c4160adf 100644 --- a/examples/image_list/android/build.gradle +++ b/examples/image_list/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/image_list/android/gradle.properties b/examples/image_list/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/image_list/android/gradle.properties +++ b/examples/image_list/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/layers/android/app/build.gradle b/examples/layers/android/app/build.gradle index 44f6f29e4b..597bf40fad 100644 --- a/examples/layers/android/app/build.gradle +++ b/examples/layers/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.layers" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/examples/layers/android/build.gradle b/examples/layers/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/examples/layers/android/build.gradle +++ b/examples/layers/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/layers/android/gradle.properties b/examples/layers/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/layers/android/gradle.properties +++ b/examples/layers/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/layers/android/gradle/wrapper/gradle-wrapper.properties b/examples/layers/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/examples/layers/android/gradle/wrapper/gradle-wrapper.properties +++ b/examples/layers/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/platform_channel/android/app/build.gradle b/examples/platform_channel/android/app/build.gradle index 91fa03af6d..b46a1e0979 100644 --- a/examples/platform_channel/android/app/build.gradle +++ b/examples/platform_channel/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.platform_channel" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/examples/platform_channel/android/build.gradle b/examples/platform_channel/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/examples/platform_channel/android/build.gradle +++ b/examples/platform_channel/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/platform_channel/android/gradle.properties b/examples/platform_channel/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/platform_channel/android/gradle.properties +++ b/examples/platform_channel/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/platform_channel/android/gradle/wrapper/gradle-wrapper.properties b/examples/platform_channel/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/examples/platform_channel/android/gradle/wrapper/gradle-wrapper.properties +++ b/examples/platform_channel/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/platform_view/android/app/build.gradle b/examples/platform_view/android/app/build.gradle index 9b501f3d6d..fb88ce858e 100644 --- a/examples/platform_view/android/app/build.gradle +++ b/examples/platform_view/android/app/build.gradle @@ -29,16 +29,12 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { applicationId "io.flutter.examples.platform_view" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/examples/platform_view/android/build.gradle b/examples/platform_view/android/build.gradle index 5df71fcf8b..c2c4160adf 100644 --- a/examples/platform_view/android/build.gradle +++ b/examples/platform_view/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/examples/platform_view/android/gradle.properties b/examples/platform_view/android/gradle.properties index a6738207fd..94adc3a3f9 100644 --- a/examples/platform_view/android/gradle.properties +++ b/examples/platform_view/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/examples/platform_view/android/gradle/wrapper/gradle-wrapper.properties b/examples/platform_view/android/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/examples/platform_view/android/gradle/wrapper/gradle-wrapper.properties +++ b/examples/platform_view/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/packages/flutter_tools/gradle/flutter.gradle b/packages/flutter_tools/gradle/flutter.gradle index 1ca71d7fc9..3b71065f62 100644 --- a/packages/flutter_tools/gradle/flutter.gradle +++ b/packages/flutter_tools/gradle/flutter.gradle @@ -27,7 +27,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } @@ -101,7 +101,8 @@ class FlutterPlugin implements Plugin { this.project = project project.extensions.create("flutter", FlutterExtension) - project.afterEvaluate this.&addFlutterTasks + this.addFlutterTasks(project) + // By default, assembling APKs generates fat APKs if multiple platforms are passed. // Configuring split per ABI allows to generate separate APKs for each abi. // This is a noop when building a bundle. @@ -158,24 +159,23 @@ class FlutterPlugin implements Plugin { } } - if (shouldShrinkResources(project)) { - String flutterProguardRules = Paths.get(flutterRoot.absolutePath, "packages", "flutter_tools", - "gradle", "flutter_proguard_rules.pro") - project.android.buildTypes { - release { - // Enables code shrinking, obfuscation, and optimization for only - // your project's release build type. - minifyEnabled true - // Enables resource shrinking, which is performed by the - // Android Gradle plugin. - // NOTE: The resource shrinker can't be used for libraries. - shrinkResources isBuiltAsApp(project) - // Fallback to `android/app/proguard-rules.pro`. - // This way, custom Proguard rules can be configured as needed. - proguardFiles project.android.getDefaultProguardFile("proguard-android.txt"), flutterProguardRules, "proguard-rules.pro" - } + String flutterProguardRules = Paths.get(flutterRoot.absolutePath, "packages", "flutter_tools", + "gradle", "flutter_proguard_rules.pro") + project.android.buildTypes { + release { + // Enables code shrinking, obfuscation, and optimization for only + // your project's release build type. + minifyEnabled true + // Enables resource shrinking, which is performed by the + // Android Gradle plugin. + // NOTE: The resource shrinker can't be used for libraries. + shrinkResources isBuiltAsApp(project) + // Fallback to `android/app/proguard-rules.pro`. + // This way, custom Proguard rules can be configured as needed. + proguardFiles project.android.getDefaultProguardFile("proguard-android.txt"), flutterProguardRules, "proguard-rules.pro" } } + if (useLocalEngine()) { // This is required to pass the local engine to flutter build aot. String engineOutPath = project.property('local-engine-out') @@ -322,13 +322,13 @@ class FlutterPlugin implements Plugin { ) } pluginProject.afterEvaluate { - pluginProject.android.buildTypes { - profile { - initWith debug - } - } - pluginProject.android.buildTypes.each addEmbeddingCompileOnlyDependency - pluginProject.android.buildTypes.whenObjectAdded addEmbeddingCompileOnlyDependency + pluginProject.android.buildTypes { + profile { + initWith debug + } + } + pluginProject.android.buildTypes.each addEmbeddingCompileOnlyDependency + pluginProject.android.buildTypes.whenObjectAdded addEmbeddingCompileOnlyDependency } } @@ -490,14 +490,6 @@ class FlutterPlugin implements Plugin { return false } - - private static Boolean shouldShrinkResources(Project project) { - if (project.hasProperty("shrink")) { - return project.property("shrink").toBoolean() - } - return false - } - private static Boolean isBuiltAsApp(Project project) { // Projects are built as applications when the they use the `com.android.application` // plugin. @@ -570,13 +562,21 @@ class FlutterPlugin implements Plugin { return "${targetArch}-release" } - private void addFlutterTasks(Project project) { - if (project.state.failure) { - return - } + /** + * Gets the directory that contains the Flutter source code. + * This is the the directory containing the `android/` directory. + */ + private File getFlutterSourceDirectory() { if (project.flutter.source == null) { throw new GradleException("Must provide Flutter source directory") } + return project.file(project.flutter.source) + } + + /** + * Gets the target file. This is typically `lib/main.dart`. + */ + private String getFlutterTarget() { String target = project.flutter.target if (target == null) { target = 'lib/main.dart' @@ -584,6 +584,66 @@ class FlutterPlugin implements Plugin { if (project.hasProperty('target')) { target = project.property('target') } + return target + } + + // In AGP 4.0, the Android linter task depends on the JAR tasks that generate `libapp.so`. + // When building APKs, this causes an issue where building release requires the debug JAR, + // but Gradle won't build debug. + // + // To workaround this issue, only configure the JAR task that is required given the task + // from the command line. + // + // The AGP team said that this issue is fixed in Gradle 7.0, which isn't released at the + // time of adding this code. Once released, this can be removed. + // + // Tested cases: + // * `./gradlew assembleRelease` + // * `./gradlew app:assembleRelease.` + // * `./gradlew assemble{flavorName}Release` + // * `./gradlew app:assemble{flavorName}Release` + // * `./gradlew assemble.` + // * `./gradlew app:assemble.` + // * `./gradlew bundle.` + // * `./gradlew bundleRelease.` + // * `./gradlew app:bundleRelease.` + // + // Related issues: + // https://issuetracker.google.com/issues/158060799 + // https://issuetracker.google.com/issues/158753935 + private boolean shouldConfigureFlutterTask(Task assembleTask) { + def cliTasksNames = project.gradle.startParameter.taskNames + if (cliTasksNames.size() != 1 || !cliTasksNames.first().contains("assemble")) { + return true + } + def taskName = cliTasksNames.first().split(":").last() + if (taskName == "assemble") { + return true + } + if (taskName == assembleTask.name) { + return true + } + if (taskName.endsWith("Release") && assembleTask.name.endsWith("Release")) { + return true + } + if (taskName.endsWith("Debug") && assembleTask.name.endsWith("Debug")) { + return true + } + if (taskName.endsWith("Profile") && assembleTask.name.endsWith("Profile")) { + return true + } + return false + } + + private Task getAssembleTask(variant) { + // `assemble` became `assembleProvider` in AGP 3.3.0. + return variant.hasProperty("assembleProvider") ? variant.assembleProvider.get() : variant.assemble + } + + private void addFlutterTasks(Project project) { + if (project.state.failure) { + return + } String[] fileSystemRootsValue = null if (project.hasProperty('filesystem-roots')) { fileSystemRootsValue = project.property('filesystem-roots').split('\\|') @@ -655,14 +715,14 @@ class FlutterPlugin implements Plugin { buildMode variantBuildMode localEngine this.localEngine localEngineSrcPath this.localEngineSrcPath - targetPath target + targetPath getFlutterTarget() verbose isVerbose() fastStart isFastStart() fileSystemRoots fileSystemRootsValue fileSystemScheme fileSystemSchemeValue trackWidgetCreation trackWidgetCreationValue targetPlatformValues = targetPlatforms - sourceDir project.file(project.flutter.source) + sourceDir getFlutterSourceDirectory() intermediateDir project.file("${project.buildDir}/${AndroidProject.FD_INTERMEDIATES}/flutter/${variant.name}/") extraFrontEndOptions extraFrontEndOptionsValue extraGenSnapshotOptions extraGenSnapshotOptionsValue @@ -734,48 +794,22 @@ class FlutterPlugin implements Plugin { def processResources = variantOutput.hasProperty("processResourcesProvider") ? variantOutput.processResourcesProvider.get() : variantOutput.processResources processResources.dependsOn(copyFlutterAssetsTask) - return - } - // Flutter module included as a subproject in add to app. - String hostAppProjectName = project.rootProject.hasProperty('flutter.hostAppProjectName') ? project.rootProject.property('flutter.hostAppProjectName') : "app" - Project appProject = project.rootProject.findProject(":${hostAppProjectName}") - assert appProject != null : "Project :${hostAppProjectName} doesn't exist. To custom the host app project name, set `org.gradle.project.flutter.hostAppProjectName=` in gradle.properties." - appProject.afterEvaluate { - assert appProject.android != null - appProject.android.applicationVariants.all { appProjectVariant -> - // Find a compatible application variant in the host app. - // - // For example, consider a host app that defines the following variants: - // | ----------------- | ----------------------------- | - // | Build Variant | Flutter Equivalent Variant | - // | ----------------- | ----------------------------- | - // | freeRelease | relese | - // | freeDebug | debug | - // | freeDevelop | debug | - // | profile | profile | - // | ----------------- | ----------------------------- | - // - // This mapping is based on the following rules: - // 1. If the host app build variant name is `profile` then the equivalent - // Flutter variant is `profile`. - // 2. If the host app build variant is debuggable - // (e.g. `buildType.debuggable = true`), then the equivalent Flutter - // variant is `debug`. - // 3. Otherwise, the equivalent Flutter variant is `release`. - if (buildModeFor(appProjectVariant.buildType) != variantBuildMode) { - return - } - Task mergeAssets = project - .tasks - .findByPath(":${hostAppProjectName}:merge${appProjectVariant.name.capitalize()}Assets") - assert mergeAssets - mergeAssets.dependsOn(copyFlutterAssetsTask) - } } + return copyFlutterAssetsTask } - if (project.android.hasProperty("applicationVariants")) { + boolean isFlutterAppProject = project.android.hasProperty("applicationVariants") + if (isFlutterAppProject) { project.android.applicationVariants.all { variant -> - addFlutterDeps(variant) + Task assembleTask = getAssembleTask(variant) + if (!shouldConfigureFlutterTask(assembleTask)) { + return + } + Task copyFlutterAssetsTask = addFlutterDeps(variant) + def variantOutput = variant.outputs.first() + def processResources = variantOutput.hasProperty("processResourcesProvider") ? + variantOutput.processResourcesProvider.get() : variantOutput.processResources + processResources.dependsOn(copyFlutterAssetsTask) + // Copy the output APKs into a known location, so `flutter run` or `flutter build apk` // can discover them. By default, this is `/build/app/outputs/flutter-apk/.apk`. // @@ -785,10 +819,6 @@ class FlutterPlugin implements Plugin { // * `flavor-name` is the flavor used to build the app in lower case if the assemble task is called. // * `build-mode` can be `release|debug|profile`. variant.outputs.all { output -> - // `assemble` became `assembleProvider` in AGP 3.3.0. - def assembleTask = variant.hasProperty("assembleProvider") - ? variant.assembleProvider.get() - : variant.assemble assembleTask.doLast { // `packageApplication` became `packageApplicationProvider` in AGP 3.3.0. def outputDirectory = variant.hasProperty("packageApplicationProvider") @@ -817,8 +847,56 @@ class FlutterPlugin implements Plugin { } } } - } else { - project.android.libraryVariants.all addFlutterDeps + configurePlugins() + return + } + // Flutter host module project (Add-to-app). + String hostAppProjectName = project.rootProject.hasProperty('flutter.hostAppProjectName') ? project.rootProject.property('flutter.hostAppProjectName') : "app" + Project appProject = project.rootProject.findProject(":${hostAppProjectName}") + assert appProject != null : "Project :${hostAppProjectName} doesn't exist. To custom the host app project name, set `org.gradle.project.flutter.hostAppProjectName=` in gradle.properties." + // Wait for the host app project configuration. + appProject.afterEvaluate { + assert appProject.android != null + project.android.libraryVariants.all { libraryVariant -> + Task copyFlutterAssetsTask + appProject.android.applicationVariants.all { appProjectVariant -> + Task appAssembleTask = getAssembleTask(appProjectVariant) + if (!shouldConfigureFlutterTask(appAssembleTask)) { + return + } + // Find a compatible application variant in the host app. + // + // For example, consider a host app that defines the following variants: + // | ----------------- | ----------------------------- | + // | Build Variant | Flutter Equivalent Variant | + // | ----------------- | ----------------------------- | + // | freeRelease | relese | + // | freeDebug | debug | + // | freeDevelop | debug | + // | profile | profile | + // | ----------------- | ----------------------------- | + // + // This mapping is based on the following rules: + // 1. If the host app build variant name is `profile` then the equivalent + // Flutter variant is `profile`. + // 2. If the host app build variant is debuggable + // (e.g. `buildType.debuggable = true`), then the equivalent Flutter + // variant is `debug`. + // 3. Otherwise, the equivalent Flutter variant is `release`. + String variantBuildMode = buildModeFor(libraryVariant.buildType) + if (buildModeFor(appProjectVariant.buildType) != variantBuildMode) { + return + } + if (copyFlutterAssetsTask == null) { + copyFlutterAssetsTask = addFlutterDeps(libraryVariant) + } + Task mergeAssets = project + .tasks + .findByPath(":${hostAppProjectName}:merge${appProjectVariant.name.capitalize()}Assets") + assert mergeAssets + mergeAssets.dependsOn(copyFlutterAssetsTask) + } + } } configurePlugins() } diff --git a/packages/flutter_tools/lib/src/android/gradle.dart b/packages/flutter_tools/lib/src/android/gradle.dart index b1846b61f7..17584a8bd8 100644 --- a/packages/flutter_tools/lib/src/android/gradle.dart +++ b/packages/flutter_tools/lib/src/android/gradle.dart @@ -324,9 +324,6 @@ Future buildGradleApp({ if (androidBuildInfo.splitPerAbi) { command.add('-Psplit-per-abi=true'); } - if (androidBuildInfo.shrink) { - command.add('-Pshrink=true'); - } if (androidBuildInfo.buildInfo.dartDefines?.isNotEmpty ?? false) { command.add('-Pdart-defines=${encodeDartDefines(androidBuildInfo.buildInfo.dartDefines)}'); } diff --git a/packages/flutter_tools/lib/src/android/gradle_errors.dart b/packages/flutter_tools/lib/src/android/gradle_errors.dart index 5b7010dcb2..4f0e0e7f15 100644 --- a/packages/flutter_tools/lib/src/android/gradle_errors.dart +++ b/packages/flutter_tools/lib/src/android/gradle_errors.dart @@ -228,8 +228,8 @@ final GradleHandledError androidXFailureHandler = GradleHandledError( } if (hasPlugins && usesAndroidX && !shouldBuildPluginAsAar) { globals.printStatus( - 'The built failed likely due to AndroidX incompatibilities in a plugin. ' - 'The tool is about to try using Jetfier to solve the incompatibility.' + 'The build failed likely due to AndroidX incompatibilities in a plugin. ' + 'The tool is about to try using Jetifier to solve the incompatibility.' ); BuildEvent( 'gradle-android-x-failure', diff --git a/packages/flutter_tools/lib/src/android/gradle_utils.dart b/packages/flutter_tools/lib/src/android/gradle_utils.dart index ab493f9bc3..6ea8890448 100644 --- a/packages/flutter_tools/lib/src/android/gradle_utils.dart +++ b/packages/flutter_tools/lib/src/android/gradle_utils.dart @@ -40,9 +40,6 @@ class GradleUtils { /// This is the `gradlew` or `gradlew.bat` script in the `android/` directory. String getExecutable(FlutterProject project) { final Directory androidDir = project.android.hostAppGradleRoot; - // Update the project if needed. - // TODO(egarciad): https://github.com/flutter/flutter/issues/40460 - gradleUtils.migrateToR8(androidDir); gradleUtils.injectGradleWrapperIfNeeded(androidDir); final File gradle = androidDir.childFile( @@ -62,37 +59,6 @@ class GradleUtils { return null; } - /// Migrates the Android's [directory] to R8. - /// https://developer.android.com/studio/build/shrink-code - @visibleForTesting - void migrateToR8(Directory directory) { - final File gradleProperties = directory.childFile('gradle.properties'); - if (!gradleProperties.existsSync()) { - throwToolExit( - 'Expected file ${gradleProperties.path}. ' - 'Please ensure that this file exists or that ${gradleProperties.dirname} can be read.' - ); - } - final String propertiesContent = gradleProperties.readAsStringSync(); - if (propertiesContent.contains('android.enableR8')) { - globals.printTrace('gradle.properties already sets `android.enableR8`'); - return; - } - globals.printTrace('set `android.enableR8=true` in gradle.properties'); - try { - if (propertiesContent.isNotEmpty && !propertiesContent.endsWith('\n')) { - // Add a new line if the file doesn't end with a new line. - gradleProperties.writeAsStringSync('\n', mode: FileMode.append); - } - gradleProperties.writeAsStringSync('android.enableR8=true\n', mode: FileMode.append); - } on FileSystemException { - throwToolExit( - 'The tool failed to add `android.enableR8=true` to ${gradleProperties.path}. ' - 'Please update the file manually and try this command again.' - ); - } - } - /// Injects the Gradle wrapper files if any of these files don't exist in [directory]. void injectGradleWrapperIfNeeded(Directory directory) { globals.fsUtils.copyDirectorySync( @@ -126,9 +92,9 @@ distributionUrl=https\\://services.gradle.org/distributions/gradle-$gradleVersio } } } -const String _defaultGradleVersion = '5.6.2'; +const String _defaultGradleVersion = '6.7'; -final RegExp _androidPluginRegExp = RegExp(r'com\.android\.tools\.build:gradle:\(\d+\.\d+\.\d+\)'); +final RegExp _androidPluginRegExp = RegExp(r'com\.android\.tools\.build:gradle:(\d+\.\d+\.\d+)'); /// Returns the Gradle version that the current Android plugin depends on when found, /// otherwise it returns a default version. @@ -138,14 +104,17 @@ final RegExp _androidPluginRegExp = RegExp(r'com\.android\.tools\.build:gradle:\ String getGradleVersionForAndroidPlugin(Directory directory) { final File buildFile = directory.childFile('build.gradle'); if (!buildFile.existsSync()) { + globals.printTrace('$buildFile doesn\'t exist, assuming AGP version: $_defaultGradleVersion'); return _defaultGradleVersion; } final String buildFileContent = buildFile.readAsStringSync(); final Iterable pluginMatches = _androidPluginRegExp.allMatches(buildFileContent); if (pluginMatches.isEmpty) { + globals.printTrace('$buildFile doesn\'t provide an AGP version, assuming AGP version: $_defaultGradleVersion'); return _defaultGradleVersion; } final String androidPluginVersion = pluginMatches.first.group(1); + globals.printTrace('$buildFile provides AGP version: $androidPluginVersion'); return getGradleVersionFor(androidPluginVersion); } @@ -225,6 +194,9 @@ String getGradleVersionFor(String androidPluginVersion) { if (_isWithinVersionRange(androidPluginVersion, min: '3.4.0', max: '3.5.0')) { return '5.6.2'; } + if (_isWithinVersionRange(androidPluginVersion, min: '4.0.0', max: '4.1.0')) { + return '6.7'; + } throwToolExit('Unsupported Android Plugin version: $androidPluginVersion.'); return ''; } diff --git a/packages/flutter_tools/lib/src/build_info.dart b/packages/flutter_tools/lib/src/build_info.dart index 57f3341405..ac41b1c713 100644 --- a/packages/flutter_tools/lib/src/build_info.dart +++ b/packages/flutter_tools/lib/src/build_info.dart @@ -221,7 +221,6 @@ class AndroidBuildInfo { AndroidArch.x86_64, ], this.splitPerAbi = false, - this.shrink = false, this.fastStart = false, }); @@ -235,9 +234,6 @@ class AndroidBuildInfo { /// will be produced. final bool splitPerAbi; - /// Whether to enable code shrinking on release mode. - final bool shrink; - /// The target platforms for the build. final Iterable targetArchs; diff --git a/packages/flutter_tools/lib/src/commands/build_apk.dart b/packages/flutter_tools/lib/src/commands/build_apk.dart index a3d1266d94..85091a247c 100644 --- a/packages/flutter_tools/lib/src/commands/build_apk.dart +++ b/packages/flutter_tools/lib/src/commands/build_apk.dart @@ -95,7 +95,6 @@ class BuildApkCommand extends BuildSubCommand { buildInfo, splitPerAbi: boolArg('split-per-abi'), targetArchs: stringsArg('target-platform').map(getAndroidArchForName), - shrink: boolArg('shrink'), ); validateBuild(androidBuildInfo); diff --git a/packages/flutter_tools/lib/src/commands/build_appbundle.dart b/packages/flutter_tools/lib/src/commands/build_appbundle.dart index f4ed666135..4e2d2843eb 100644 --- a/packages/flutter_tools/lib/src/commands/build_appbundle.dart +++ b/packages/flutter_tools/lib/src/commands/build_appbundle.dart @@ -84,7 +84,6 @@ class BuildAppBundleCommand extends BuildSubCommand { } final AndroidBuildInfo androidBuildInfo = AndroidBuildInfo(await getBuildInfo(), targetArchs: stringsArg('target-platform').map(getAndroidArchForName), - shrink: boolArg('shrink'), ); validateBuild(androidBuildInfo); await androidBuilder.buildAab( diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart index 635b6f2f7f..e2d2e35e0d 100644 --- a/packages/flutter_tools/lib/src/runner/flutter_command.dart +++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart @@ -587,14 +587,10 @@ abstract class FlutterCommand extends Command { void addShrinkingFlag() { argParser.addFlag('shrink', negatable: true, - defaultsTo: true, - help: 'Whether to enable code shrinking on release mode. ' - 'When enabling shrinking, you also benefit from obfuscation, ' - 'which shortens the names of your app’s classes and members, ' - 'and optimization, which applies more aggressive strategies to ' - 'further reduce the size of your app. ' - 'To learn more, see: https://developer.android.com/studio/build/shrink-code', - ); + hide: true, + help: 'This flag is deprecated. Code shrinking is always enabled in release builds. ' + 'To learn more, see: https://developer.android.com/studio/build/shrink-code' + ); } void addNullSafetyModeOptions({ @required bool hide }) { diff --git a/packages/flutter_tools/templates/app/android-java.tmpl/app/build.gradle.tmpl b/packages/flutter_tools/templates/app/android-java.tmpl/app/build.gradle.tmpl index 7a7cea0172..feb41cdba2 100644 --- a/packages/flutter_tools/templates/app/android-java.tmpl/app/build.gradle.tmpl +++ b/packages/flutter_tools/templates/app/android-java.tmpl/app/build.gradle.tmpl @@ -25,17 +25,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "{{androidIdentifier}}" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/packages/flutter_tools/templates/app/android-java.tmpl/build.gradle b/packages/flutter_tools/templates/app/android-java.tmpl/build.gradle index e0d7ae2c11..c9e3db0a0f 100644 --- a/packages/flutter_tools/templates/app/android-java.tmpl/build.gradle +++ b/packages/flutter_tools/templates/app/android-java.tmpl/build.gradle @@ -5,7 +5,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/packages/flutter_tools/templates/app/android-kotlin.tmpl/app/build.gradle.tmpl b/packages/flutter_tools/templates/app/android-kotlin.tmpl/app/build.gradle.tmpl index 84fc9f153c..9879eb5f60 100644 --- a/packages/flutter_tools/templates/app/android-kotlin.tmpl/app/build.gradle.tmpl +++ b/packages/flutter_tools/templates/app/android-kotlin.tmpl/app/build.gradle.tmpl @@ -26,21 +26,17 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' } - lintOptions { - disable 'InvalidPackage' - } - defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "{{androidIdentifier}}" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/packages/flutter_tools/templates/app/android-kotlin.tmpl/build.gradle b/packages/flutter_tools/templates/app/android-kotlin.tmpl/build.gradle index 3100ad2d55..c505a86352 100644 --- a/packages/flutter_tools/templates/app/android-kotlin.tmpl/build.gradle +++ b/packages/flutter_tools/templates/app/android-kotlin.tmpl/build.gradle @@ -6,7 +6,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/packages/flutter_tools/templates/app/android.tmpl/gradle/wrapper/gradle-wrapper.properties b/packages/flutter_tools/templates/app/android.tmpl/gradle/wrapper/gradle-wrapper.properties index 296b146b73..bc6a58afdd 100644 --- a/packages/flutter_tools/templates/app/android.tmpl/gradle/wrapper/gradle-wrapper.properties +++ b/packages/flutter_tools/templates/app/android.tmpl/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/packages/flutter_tools/templates/module/android/gradle/build.gradle.copy.tmpl b/packages/flutter_tools/templates/module/android/gradle/build.gradle.copy.tmpl index 9a17202836..2316d6f033 100644 --- a/packages/flutter_tools/templates/module/android/gradle/build.gradle.copy.tmpl +++ b/packages/flutter_tools/templates/module/android/gradle/build.gradle.copy.tmpl @@ -7,7 +7,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/packages/flutter_tools/templates/module/android/host_app_common/app.tmpl/build.gradle.tmpl b/packages/flutter_tools/templates/module/android/host_app_common/app.tmpl/build.gradle.tmpl index bcb525b203..13f1f8200b 100644 --- a/packages/flutter_tools/templates/module/android/host_app_common/app.tmpl/build.gradle.tmpl +++ b/packages/flutter_tools/templates/module/android/host_app_common/app.tmpl/build.gradle.tmpl @@ -3,7 +3,7 @@ def flutterPluginVersion = 'managed' apply plugin: 'com.android.application' android { - compileSdkVersion 29 + compileSdkVersion 30 compileOptions { sourceCompatibility 1.8 @@ -13,7 +13,7 @@ android { defaultConfig { applicationId "{{androidIdentifier}}.host" minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" } diff --git a/packages/flutter_tools/templates/module/android/library_new_embedding/Flutter.tmpl/build.gradle.tmpl b/packages/flutter_tools/templates/module/android/library_new_embedding/Flutter.tmpl/build.gradle.tmpl index 7608518c86..7d3e6b30ca 100644 --- a/packages/flutter_tools/templates/module/android/library_new_embedding/Flutter.tmpl/build.gradle.tmpl +++ b/packages/flutter_tools/templates/module/android/library_new_embedding/Flutter.tmpl/build.gradle.tmpl @@ -30,11 +30,11 @@ group '{{androidIdentifier}}' version '1.0' android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { minSdkVersion 16 - targetSdkVersion 29 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/packages/flutter_tools/templates/plugin/android-java.tmpl/build.gradle.tmpl b/packages/flutter_tools/templates/plugin/android-java.tmpl/build.gradle.tmpl index 415716bdf3..14c45ede2a 100644 --- a/packages/flutter_tools/templates/plugin/android-java.tmpl/build.gradle.tmpl +++ b/packages/flutter_tools/templates/plugin/android-java.tmpl/build.gradle.tmpl @@ -8,7 +8,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' } } @@ -22,12 +22,9 @@ rootProject.allprojects { apply plugin: 'com.android.library' android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { minSdkVersion 16 } - lintOptions { - disable 'InvalidPackage' - } } diff --git a/packages/flutter_tools/templates/plugin/android-kotlin.tmpl/build.gradle.tmpl b/packages/flutter_tools/templates/plugin/android-kotlin.tmpl/build.gradle.tmpl index 35b015d876..5e5da7ecd0 100644 --- a/packages/flutter_tools/templates/plugin/android-kotlin.tmpl/build.gradle.tmpl +++ b/packages/flutter_tools/templates/plugin/android-kotlin.tmpl/build.gradle.tmpl @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' android { - compileSdkVersion 29 + compileSdkVersion 30 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -33,9 +33,6 @@ android { defaultConfig { minSdkVersion 16 } - lintOptions { - disable 'InvalidPackage' - } } dependencies { diff --git a/packages/flutter_tools/templates/plugin/android.tmpl/gradle/wrapper/gradle-wrapper.properties b/packages/flutter_tools/templates/plugin/android.tmpl/gradle/wrapper/gradle-wrapper.properties index 01a286e96a..3c9d0852bf 100644 --- a/packages/flutter_tools/templates/plugin/android.tmpl/gradle/wrapper/gradle-wrapper.properties +++ b/packages/flutter_tools/templates/plugin/android.tmpl/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/packages/flutter_tools/test/commands.shard/permeable/build_apk_test.dart b/packages/flutter_tools/test/commands.shard/permeable/build_apk_test.dart index e449704e89..2750d67d39 100644 --- a/packages/flutter_tools/test/commands.shard/permeable/build_apk_test.dart +++ b/packages/flutter_tools/test/commands.shard/permeable/build_apk_test.dart @@ -237,7 +237,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', '-Ptree-shake-icons=true', 'assembleRelease', ], @@ -266,7 +265,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', '-Psplit-debug-info=${tempDir.path}', '-Ptree-shake-icons=true', 'assembleRelease', @@ -300,7 +298,6 @@ void main() { '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', '-Pextra-front-end-options=foo,bar', - '-Pshrink=true', '-Ptree-shake-icons=true', 'assembleRelease', ], @@ -356,7 +353,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', '-Ptree-shake-icons=true', 'assembleRelease', ], @@ -424,7 +420,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', '-Ptree-shake-icons=true', 'assembleRelease', ], @@ -481,7 +476,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', '-Ptree-shake-icons=true', 'assembleRelease', ], diff --git a/packages/flutter_tools/test/commands.shard/permeable/build_appbundle_test.dart b/packages/flutter_tools/test/commands.shard/permeable/build_appbundle_test.dart index 2376dfbff8..e11dd8df7c 100644 --- a/packages/flutter_tools/test/commands.shard/permeable/build_appbundle_test.dart +++ b/packages/flutter_tools/test/commands.shard/permeable/build_appbundle_test.dart @@ -207,131 +207,6 @@ void main() { }); }); - testUsingContext('shrinking is enabled by default on release mode', () async { - final String projectPath = await createProject( - tempDir, - arguments: ['--no-pub', '--template=app'], - ); - - await expectLater(() async { - await runBuildAppBundleCommand(projectPath); - }, throwsToolExit(message: 'Gradle task bundleRelease failed with exit code 1')); - - verify(mockProcessManager.start( - [ - gradlew, - '-q', - '-Ptarget-platform=android-arm,android-arm64,android-x64', - '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', - '-Ptrack-widget-creation=true', - '-Pshrink=true', - '-Ptree-shake-icons=true', - 'bundleRelease', - ], - workingDirectory: anyNamed('workingDirectory'), - environment: anyNamed('environment'), - )).called(1); - }, - overrides: { - AndroidSdk: () => mockAndroidSdk, - FlutterProjectFactory: () => FakeFlutterProjectFactory(tempDir), - ProcessManager: () => mockProcessManager, - }); - - testUsingContext('shrinking is disabled when --no-shrink is passed', () async { - final String projectPath = await createProject( - tempDir, - arguments: ['--no-pub', '--template=app'], - ); - - await expectLater(() async { - await runBuildAppBundleCommand( - projectPath, - arguments: ['--no-shrink'], - ); - }, throwsToolExit(message: 'Gradle task bundleRelease failed with exit code 1')); - - verify(mockProcessManager.start( - [ - gradlew, - '-q', - '-Ptarget-platform=android-arm,android-arm64,android-x64', - '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', - '-Ptrack-widget-creation=true', - '-Ptree-shake-icons=true', - 'bundleRelease', - ], - workingDirectory: anyNamed('workingDirectory'), - environment: anyNamed('environment'), - )).called(1); - }, - overrides: { - AndroidSdk: () => mockAndroidSdk, - FlutterProjectFactory: () => FakeFlutterProjectFactory(tempDir), - ProcessManager: () => mockProcessManager, - }); - - testUsingContext('guides the user when the shrinker fails', () async { - final String projectPath = await createProject(tempDir, - arguments: ['--no-pub', '--template=app']); - when(mockProcessManager.start( - [ - gradlew, - '-q', - '-Ptarget-platform=android-arm,android-arm64,android-x64', - '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', - '-Ptrack-widget-creation=true', - '-Pshrink=true', - '-Ptree-shake-icons=true', - 'bundleRelease', - ], - workingDirectory: anyNamed('workingDirectory'), - environment: anyNamed('environment'), - )).thenAnswer((_) { - const String r8StdoutWarning = - "Execution failed for task ':app:transformClassesAndResourcesWithR8ForStageInternal'.\n" - '> com.android.tools.r8.CompilationFailedException: Compilation failed to complete'; - return Future.value( - createMockProcess( - exitCode: 1, - stdout: r8StdoutWarning, - ), - ); - }); - - await expectLater(() async { - await runBuildAppBundleCommand( - projectPath, - ); - }, throwsToolExit(message: 'Gradle task bundleRelease failed with exit code 1')); - - expect( - testLogger.statusText, - containsIgnoringWhitespace('The shrinker may have failed to optimize the Java bytecode.'), - ); - expect( - testLogger.statusText, - containsIgnoringWhitespace('To disable the shrinker, pass the `--no-shrink` flag to this command.'), - ); - expect( - testLogger.statusText, - containsIgnoringWhitespace('To learn more, see: https://developer.android.com/studio/build/shrink-code'), - ); - - verify(mockUsage.sendEvent( - 'build', - 'appbundle', - label: 'gradle-r8-failure', - parameters: anyNamed('parameters'), - )).called(1); - }, - overrides: { - AndroidSdk: () => mockAndroidSdk, - FlutterProjectFactory: () => FakeFlutterProjectFactory(tempDir), - ProcessManager: () => mockProcessManager, - Usage: () => mockUsage, - }); - testUsingContext("reports when the app isn't using AndroidX", () async { final String projectPath = await createProject(tempDir, arguments: ['--no-pub', '--template=app']); @@ -349,7 +224,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', 'assembleRelease', ], workingDirectory: anyNamed('workingDirectory'), @@ -405,7 +279,6 @@ void main() { '-Ptarget-platform=android-arm,android-arm64,android-x64', '-Ptarget=${globals.fs.path.join(tempDir.path, 'flutter_project', 'lib', 'main.dart')}', '-Ptrack-widget-creation=true', - '-Pshrink=true', 'assembleRelease', ], workingDirectory: anyNamed('workingDirectory'), diff --git a/packages/flutter_tools/test/commands.shard/permeable/create_test.dart b/packages/flutter_tools/test/commands.shard/permeable/create_test.dart index 71d53d12ac..e7decaaab8 100755 --- a/packages/flutter_tools/test/commands.shard/permeable/create_test.dart +++ b/packages/flutter_tools/test/commands.shard/permeable/create_test.dart @@ -2140,7 +2140,7 @@ void main() { expect(env['flutter'].allows(Version(1, 19, 0)), false); }); - testUsingContext('default app uses Android sdk 29', () async { + testUsingContext('default app uses Android SDK 30', () async { Cache.flutterRoot = '../..'; when(mockFlutterVersion.frameworkRevision).thenReturn(frameworkRevision); when(mockFlutterVersion.channel).thenReturn(frameworkChannel); @@ -2154,8 +2154,8 @@ void main() { final String buildContent = await globals.fs.file(projectDir.path + '/android/app/build.gradle').readAsString(); - expect(buildContent.contains('compileSdkVersion 29'), true); - expect(buildContent.contains('targetSdkVersion 29'), true); + expect(buildContent.contains('compileSdkVersion 30'), true); + expect(buildContent.contains('targetSdkVersion 30'), true); }); testUsingContext('Linux plugins handle partially camel-case project names correctly', () async { diff --git a/packages/flutter_tools/test/general.shard/android/gradle_errors_test.dart b/packages/flutter_tools/test/general.shard/android/gradle_errors_test.dart index 07e7a3d67d..c2c549a6b4 100644 --- a/packages/flutter_tools/test/general.shard/android/gradle_errors_test.dart +++ b/packages/flutter_tools/test/general.shard/android/gradle_errors_test.dart @@ -441,8 +441,8 @@ Command: /home/android/gradlew assembleRelease expect(testLogger.statusText, contains( - 'The built failed likely due to AndroidX incompatibilities in a plugin. ' - 'The tool is about to try using Jetfier to solve the incompatibility.' + 'The build failed likely due to AndroidX incompatibilities in a plugin. ' + 'The tool is about to try using Jetifier to solve the incompatibility.' ) ); verify(mockUsage.sendEvent( diff --git a/packages/flutter_tools/test/general.shard/android/gradle_test.dart b/packages/flutter_tools/test/general.shard/android/gradle_test.dart index a05cf000c4..0a003f2b7b 100644 --- a/packages/flutter_tools/test/general.shard/android/gradle_test.dart +++ b/packages/flutter_tools/test/general.shard/android/gradle_test.dart @@ -316,7 +316,7 @@ void main() { any, label: 'gradle-expected-file-not-found', parameters: const { - 'cd37': 'androidGradlePluginVersion: 5.6.2, fileExtension: .aab', + 'cd37': 'androidGradlePluginVersion: 6.7, fileExtension: .aab', }, ), ).called(1); @@ -775,6 +775,9 @@ flutter: expect(getGradleVersionFor('3.4.0'), '5.6.2'); expect(getGradleVersionFor('3.5.0'), '5.6.2'); + + expect(getGradleVersionFor('4.0.0'), '6.7'); + expect(getGradleVersionFor('4.1.0'), '6.7'); }); testWithoutContext('throws on unsupported versions', () { diff --git a/packages/flutter_tools/test/general.shard/android/gradle_utils_test.dart b/packages/flutter_tools/test/general.shard/android/gradle_utils_test.dart index cd850b1078..34c05b2dc2 100644 --- a/packages/flutter_tools/test/general.shard/android/gradle_utils_test.dart +++ b/packages/flutter_tools/test/general.shard/android/gradle_utils_test.dart @@ -70,7 +70,7 @@ void main() { 'distributionPath=wrapper/dists\n' 'zipStoreBase=GRADLE_USER_HOME\n' 'zipStorePath=wrapper/dists\n' - 'distributionUrl=https\\://services.gradle.org/distributions/gradle-5.6.2-all.zip\n'); + 'distributionUrl=https\\://services.gradle.org/distributions/gradle-6.7-all.zip\n'); }, overrides: { Cache: () => Cache.test(rootOverride: tempDir, fileSystem: memoryFileSystem), FileSystem: () => memoryFileSystem, @@ -111,114 +111,74 @@ void main() { 'distributionPath=wrapper/dists\n' 'zipStoreBase=GRADLE_USER_HOME\n' 'zipStorePath=wrapper/dists\n' - 'distributionUrl=https\\://services.gradle.org/distributions/gradle-5.6.2-all.zip\n'); + 'distributionUrl=https\\://services.gradle.org/distributions/gradle-6.7-all.zip\n'); }, overrides: { Cache: () => Cache.test(rootOverride: tempDir, fileSystem: memoryFileSystem), FileSystem: () => memoryFileSystem, ProcessManager: () => FakeProcessManager.any(), }); - }); + testUsingContext('injects the wrapper and the Gradle version is derivated from the AGP version', () { + const Map testCases = { + // AGP version : Gradle version + '1.0.0': '2.3', + '3.3.1': '4.10.2', + '3.0.0': '4.1', + '3.0.5': '4.1', + '3.0.9': '4.1', + '3.1.0': '4.4', + '3.2.0': '4.6', + '3.3.0': '4.10.2', + '3.4.0': '5.6.2', + '3.5.0': '5.6.2', + '4.0.0': '6.7', + '4.0.5': '6.7', + '4.1.0': '6.7', + }; - group('migrateToR8', () { - MemoryFileSystem memoryFileSystem; + for (final MapEntry entry in testCases.entries) { + final Directory sampleAppAndroid = globals.fs.systemTempDirectory.createTempSync('android'); + sampleAppAndroid + .childFile('build.gradle') + .writeAsStringSync(''' + buildscript { + dependencies { + classpath 'com.android.tools.build:gradle:${entry.key}' + } + } + '''); + gradleUtils.injectGradleWrapperIfNeeded(sampleAppAndroid); - setUp(() { - memoryFileSystem = MemoryFileSystem.test(); - }); + expect(sampleAppAndroid.childFile('gradlew').existsSync(), isTrue); - testUsingContext("throws ToolExit if gradle.properties doesn't exist", () { - final Directory sampleAppAndroid = globals.fs.directory('/sample-app/android'); - sampleAppAndroid.createSync(recursive: true); + expect(sampleAppAndroid + .childDirectory('gradle') + .childDirectory('wrapper') + .childFile('gradle-wrapper.jar') + .existsSync(), isTrue); - expect(() { - gradleUtils.migrateToR8(sampleAppAndroid); - }, throwsToolExit(message: 'Expected file ${sampleAppAndroid.path}')); + expect(sampleAppAndroid + .childDirectory('gradle') + .childDirectory('wrapper') + .childFile('gradle-wrapper.properties') + .existsSync(), isTrue); + expect(sampleAppAndroid + .childDirectory('gradle') + .childDirectory('wrapper') + .childFile('gradle-wrapper.properties') + .readAsStringSync(), + 'distributionBase=GRADLE_USER_HOME\n' + 'distributionPath=wrapper/dists\n' + 'zipStoreBase=GRADLE_USER_HOME\n' + 'zipStorePath=wrapper/dists\n' + 'distributionUrl=https\\://services.gradle.org/distributions/gradle-${entry.value}-all.zip\n'); + } }, overrides: { + Cache: () => Cache.test(rootOverride: tempDir, fileSystem: memoryFileSystem), FileSystem: () => memoryFileSystem, ProcessManager: () => FakeProcessManager.any(), }); - - testUsingContext('throws ToolExit if it cannot write gradle.properties', () { - final MockDirectory sampleAppAndroid = MockDirectory(); - final MockFile gradleProperties = MockFile(); - - when(gradleProperties.path).thenReturn('foo/gradle.properties'); - when(gradleProperties.existsSync()).thenReturn(true); - when(gradleProperties.readAsStringSync()).thenReturn(''); - when(gradleProperties.writeAsStringSync('android.enableR8=true\n', mode: FileMode.append)) - .thenThrow(const FileSystemException()); - - when(sampleAppAndroid.childFile('gradle.properties')) - .thenReturn(gradleProperties); - - expect(() { - gradleUtils.migrateToR8(sampleAppAndroid); - }, - throwsToolExit(message: - 'The tool failed to add `android.enableR8=true` to foo/gradle.properties. ' - 'Please update the file manually and try this command again.')); - }); - - testUsingContext('does not update gradle.properties if it already uses R8', () { - final Directory sampleAppAndroid = globals.fs.directory('/sample-app/android'); - sampleAppAndroid.createSync(recursive: true); - sampleAppAndroid.childFile('gradle.properties') - .writeAsStringSync('android.enableR8=true'); - - gradleUtils.migrateToR8(sampleAppAndroid); - - expect(testLogger.traceText, - contains('gradle.properties already sets `android.enableR8`')); - expect(sampleAppAndroid.childFile('gradle.properties').readAsStringSync(), - equals('android.enableR8=true')); - }, overrides: { - FileSystem: () => memoryFileSystem, - ProcessManager: () => FakeProcessManager.any(), - }); - - testUsingContext('sets android.enableR8=true', () { - final Directory sampleAppAndroid = globals.fs.directory('/sample-app/android'); - sampleAppAndroid.createSync(recursive: true); - sampleAppAndroid.childFile('gradle.properties') - .writeAsStringSync('org.gradle.jvmargs=-Xmx1536M\n'); - - gradleUtils.migrateToR8(sampleAppAndroid); - - expect(testLogger.traceText, contains('set `android.enableR8=true` in gradle.properties')); - expect( - sampleAppAndroid.childFile('gradle.properties').readAsStringSync(), - equals( - 'org.gradle.jvmargs=-Xmx1536M\n' - 'android.enableR8=true\n' - ), - ); - }, overrides: { - FileSystem: () => memoryFileSystem, - ProcessManager: () => FakeProcessManager.any(), - }); - - testUsingContext('appends android.enableR8=true to the new line', () { - final Directory sampleAppAndroid = globals.fs.directory('/sample-app/android'); - sampleAppAndroid.createSync(recursive: true); - sampleAppAndroid.childFile('gradle.properties') - .writeAsStringSync('org.gradle.jvmargs=-Xmx1536M'); - - gradleUtils.migrateToR8(sampleAppAndroid); - - expect(testLogger.traceText, contains('set `android.enableR8=true` in gradle.properties')); - expect( - sampleAppAndroid.childFile('gradle.properties').readAsStringSync(), - equals( - 'org.gradle.jvmargs=-Xmx1536M\n' - 'android.enableR8=true\n' - ), - ); - }, overrides: { - FileSystem: () => memoryFileSystem, - ProcessManager: () => FakeProcessManager.any() - }); }); group('GradleUtils.getExecutable', () { @@ -241,7 +201,6 @@ void main() { androidDirectory.childFile('gradle.properties').createSync(); when(gradleUtils.injectGradleWrapperIfNeeded(any)).thenReturn(null); - when(gradleUtils.migrateToR8(any)).thenReturn(null); expect( GradleUtils().getExecutable(FlutterProject.current()), @@ -273,7 +232,6 @@ void main() { when(androidProject.hostAppGradleRoot).thenReturn(androidDirectory); when(gradleUtils.injectGradleWrapperIfNeeded(any)).thenReturn(null); - when(gradleUtils.migrateToR8(any)).thenReturn(null); GradleUtils().getExecutable(flutterProject); @@ -304,7 +262,6 @@ void main() { when(androidProject.hostAppGradleRoot).thenReturn(androidDirectory); when(gradleUtils.injectGradleWrapperIfNeeded(any)).thenReturn(null); - when(gradleUtils.migrateToR8(any)).thenReturn(null); GradleUtils().getExecutable(flutterProject); @@ -335,7 +292,6 @@ void main() { when(androidProject.hostAppGradleRoot).thenReturn(androidDirectory); when(gradleUtils.injectGradleWrapperIfNeeded(any)).thenReturn(null); - when(gradleUtils.migrateToR8(any)).thenReturn(null); GradleUtils().getExecutable(flutterProject); diff --git a/packages/flutter_tools/test/general.shard/project_test.dart b/packages/flutter_tools/test/general.shard/project_test.dart index ae223e152f..d8d83dc95a 100644 --- a/packages/flutter_tools/test/general.shard/project_test.dart +++ b/packages/flutter_tools/test/general.shard/project_test.dart @@ -919,7 +919,7 @@ String gradleFileWithApplicationId(String id) { return ''' apply plugin: 'com.android.application' android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { applicationId '$id' @@ -936,7 +936,7 @@ version '1.0-SNAPSHOT' apply plugin: 'com.android.library' android { - compileSdkVersion 29 + compileSdkVersion 30 } '''; } diff --git a/packages/flutter_tools/test/integration.shard/deprecated_gradle_settings_test.dart b/packages/flutter_tools/test/integration.shard/deprecated_gradle_settings_test.dart index e5c30641a6..24ed02bebc 100644 --- a/packages/flutter_tools/test/integration.shard/deprecated_gradle_settings_test.dart +++ b/packages/flutter_tools/test/integration.shard/deprecated_gradle_settings_test.dart @@ -22,7 +22,6 @@ void main() { 'apk', '--debug', '--target-platform', 'android-arm', - '--no-shrink', '--verbose', ], workingDirectory: woringDirectory); print(result.stdout); diff --git a/packages/integration_test/android/build.gradle b/packages/integration_test/android/build.gradle index 2318d33b15..a0a6506215 100644 --- a/packages/integration_test/android/build.gradle +++ b/packages/integration_test/android/build.gradle @@ -12,7 +12,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.6.3' + classpath 'com.android.tools.build:gradle:4.1.0' } } @@ -26,15 +26,13 @@ rootProject.allprojects { apply plugin: 'com.android.library' android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { minSdkVersion 16 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } - lintOptions { - disable 'InvalidPackage' - } + dependencies { api 'junit:junit:4.12' diff --git a/packages/integration_test/example/android/app/build.gradle b/packages/integration_test/example/android/app/build.gradle index bd9c7c4e90..eadb1b5718 100644 --- a/packages/integration_test/example/android/app/build.gradle +++ b/packages/integration_test/example/android/app/build.gradle @@ -29,17 +29,13 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 29 - - lintOptions { - disable 'InvalidPackage' - } + compileSdkVersion 30 defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.integration_test_example" minSdkVersion 16 - targetSdkVersion 28 + targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/packages/integration_test/example/android/build.gradle b/packages/integration_test/example/android/build.gradle index 3605b5c5f3..c2c4160adf 100644 --- a/packages/integration_test/example/android/build.gradle +++ b/packages/integration_test/example/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.6.3' + classpath 'com.android.tools.build:gradle:4.1.0' } } diff --git a/packages/integration_test/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/integration_test/example/android/gradle/wrapper/gradle-wrapper.properties index bc24dcf039..bc6a58afdd 100644 --- a/packages/integration_test/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/integration_test/example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip