現象
Android StudioにてFlutterアプリ開発を行っている際、Androidエミュレータで実行しようとしたところ、次のエラーが発生しました。
BUILD FAILED in 24s
Exception: Gradle task assembleDebug failed with exit code 1
エラーの原因特定方法
- android/gradle/gradle-wrapper.propertiesを開きます。
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
この箇所を、
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
のようにダウングレードします。
2. android/build.gradleを開きます。
dependencies {
classpath 'com.android.tools.build:gradle:3.6.0-alpha09'
この箇所を、
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
に変更します。
筆者の場合は、以下のように単にダウングレードしました。
dependencies {
- classpath 'com.android.tools.build:gradle:4.1.0'
+ classpath 'com.android.tools.build:gradle:4.0.1'
3. 「flutter clean」して、「flutter build apk」を実行します。
すると、エラーの原因が表示されるようになります。
参考:筆者の場合のエラーの内容と対処方法
筆者の場合、次のエラーが表示されました。
BUILD FAILED in 7s
Running Gradle task 'assembleRelease'... 7.6s
┌─ Flutter Fix ──────────────────────────────────────────────
│ [!] Your project needs to upgrade Gradle and the Android Gradle plugin.
│
│ To fix this issue, replace the following content:
│ /Users/username/Documents/dev/appname/android/build.gradle:
│ - classpath 'com.android.tools.build:gradle:<current-version>'
│ + classpath 'com.android.tools.build:gradle:7.3.0'
│ /Users/username/Documents/dev/appname/android/gradle/wrapper/gradle-wrapper.properties:
│ - https://services.gradle.org/distributions/gradle-<current-version>-all.zip
│ + https://services.gradle.org/distributions/gradle-7.5-all.zip
└────────────────────────────────────────────────────
Gradle task assembleRelease failed with exit code 1
対処方法は上記の通りで、
- android/build.gradleを開き、次のように修正します。
dependencies {
- classpath 'com.android.tools.build:gradle:4.0.1'
+ classpath 'com.android.tools.build:gradle:7.3.0'
2. android/gradle/wrapper/gradle-wrapper.propertiesを開き、次のように修正します。
- distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
+ distributionUrl=https://services.gradle.org/distributions/gradle-7.5-all.zip
3. 「flutter clean」して、「flutter build apk」を実行します。
ここまでの手順で、エラーは解決するようです。少なくとも、エラーの原因は特定できているはずです。
筆者の場合は、また別のエラーが発生しました。これ以降の対処については、また別の記事で紹介したいと思います。
以上です。