Created
November 18, 2024 09:17
-
Star
(109)
You must be signed in to star a gist -
Fork
(33)
You must be signed in to fork a gist
Revisions
-
bizz84 created this gist
Nov 18, 2024 .There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,62 @@ #!/bin/bash # Update Gradle, Java and other Android project settings in a Flutter project # See: https://gradle.org/releases/ DESIRED_GRADLE_VERSION="8.9" # Build errors often show the required Java version DESIRED_JAVA_VERSION="17" # See: https://developer.android.com/ndk/downloads DESIRED_NDK_VERSION="27.0.12077973" # The minimum Android SDK version DESIRED_MIN_SDK_VERSION="24" # Google Play Stores requires a minimum target SDK version DESIRED_TARGET_SDK="34" # This shouldn't be too old, otherwise it won't compile with the DESIRED_GRADLE_VERSION set above DESIRED_ANDROID_APPLICATION_VERSION="8.7.2" # Exit if this is not a Flutter project if [ ! -f "pubspec.yaml" ]; then echo "This is not a Flutter project" exit 1 fi # Exit if the Android directory does not exist if [ ! -d "android" ]; then echo "The Android directory does not exist" exit 1 fi # Navigate to the Android directory cd android # Update Gradle version (if specified) if [ -n "$DESIRED_GRADLE_VERSION" ]; then sed -i '' "s/gradle-.*-all.zip/gradle-${DESIRED_GRADLE_VERSION}-all.zip/" gradle/wrapper/gradle-wrapper.properties fi # Update Java version (if specified) if [ -n "$DESIRED_JAVA_VERSION" ]; then sed -i '' "s/JavaVersion.VERSION_[0-9_]*/JavaVersion.VERSION_${DESIRED_JAVA_VERSION}/" app/build.gradle fi # Update NDK version (if specified) if [ -n "$DESIRED_NDK_VERSION" ]; then sed -i '' "s/ndkVersion = .*/ndkVersion = \"${DESIRED_NDK_VERSION}\"/" app/build.gradle fi # Update minSdk version (if specified) if [ -n "$DESIRED_MIN_SDK_VERSION" ]; then sed -i '' "s/minSdk = .*/minSdk = ${DESIRED_MIN_SDK_VERSION}/" app/build.gradle fi # Update targetSdk version (if specified) if [ -n "$DESIRED_TARGET_SDK" ]; then sed -i '' "s/targetSdk = .*/targetSdk = ${DESIRED_TARGET_SDK}/" app/build.gradle fi # Update com.android.application version in settings.gradle (if specified) if [ -n "$DESIRED_ANDROID_APPLICATION_VERSION" ]; then sed -i '' "s/id \"com.android.application\" version \".*\" apply false/id \"com.android.application\" version \"${DESIRED_ANDROID_APPLICATION_VERSION}\" apply false/" settings.gradle fi echo "Android project updated. Run 'git diff' to see the changes or 'git reset --hard' to discard them."