Reputation: 157
My flutter app runs fine on the emulator, runs fine on my android when connected via USB, but crashes before opening when updated from the play store. Does the same to everyone else that has tried the update. So I thought I would try rebuilding as apk and install from firebase distribution.
flutter build works fine if i run as appbundle, or apk but only fails on apk --split-per-abi. I am not sure if this error has to do with why it's crashing or if it's a new problem.
Here is the error I get when running flutter build -v apk --split-per-abi
FAILURE: Build failed with an exception.
[ +1 ms] * Where:
[ ] Script
'/Users/me/development/flutter-3/packages/flutter_tools/gradle/flutter.gradle' line: 646
[ ] * What went wrong:
[ ] A problem occurred evaluating root project 'android'.
[ ] > A problem occurred configuring project ':app'.
[ +1 ms] > The value for this property cannot be changed any further.
[ ] * Try:
[ ] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to
get more log output. Run with --scan to get full insights.
[ ] * Get more help at https://help.gradle.org
[ ] BUILD FAILED in 1s
I seem to keep running into other issues related to this being caused by the gradle version or maybe google services version. I've tried several different versions. Currently using https://services.gradle.org/distributions/gradle-6.5-all.zip and
classpath 'com.android.tools.build:gradle:4.1.0'
classpath 'com.google.gms:google-services:4.1.0'
I also checked the file in the error message, line 646 contains:
abiVersionCode * 1000 + variant.versionCode
I've run flutter clean and here is my flutter doctor -v output:
[✓] Flutter (Channel master, 1.24.0-4.0.pre.167, on Mac OS X 10.15.6 19G2021 darwin-x64, locale en-US)
• Flutter version 1.24.0-4.0.pre.167 at /Users/me/development/flutter-3
• Framework revision 22724370cb (54 minutes ago), 2020-10-30 11:00:24 -0700
• Engine revision 99cc50dfff
• Dart version 2.11.0 (build 2.11.0-266.0.dev)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/me/Library/Android/sdk
• Platform android-29, build-tools 29.0.2
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.3.1, Build version 11C504
• CocoaPods version 1.9.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
[✓] Android Studio (version 3.5)
• Android Studio at /Users/me/Library/Application
Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/191.5900203/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
[✓] VS Code (version 1.46.0)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.12.2
[✓] Connected device (2 available)
• Web Server (web) • web-server • web-javascript • Flutter Tools
• Chrome (web) • chrome • web-javascript • Google Chrome 86.0.4240.111
• No issues found!
Upvotes: 10
Views: 54311
Reputation: 1
android {
compileSdkVersion 30
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.test_flutter"
minSdkVersion 21
targetSdkVersion 31
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
}
}
}
Upvotes: -1
Reputation: 2238
Change the version of gradle on android/build.gradle file to 3.5.0.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
...
classpath 'com.android.tools.build:gradle:3.5.0' // Use this version
}
}
On android/gradle/wrapper/gradle-wrapper.properties, your distributionUrl should also have the following gradle version.
gradle-5.6.2-all.zip
so that you won't run into any other issues.
Finally, run these commands
rm -rf android/.gradle
rm -rf $HOME/.gradle # This is for Mac users
flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
It should work like a charm! And update Gradle later on when things get little matured and stable.
Upvotes: 25