4 Commits
4 changed files with 73 additions and 13 deletions

No files matched your search

+23 -1
View File
@@ -15,6 +15,8 @@ android {
compileSdk = flutter.compileSdkVersion compileSdk = flutter.compileSdkVersion
ndkVersion = flutter.ndkVersion ndkVersion = flutter.ndkVersion
compileOptions { compileOptions {
isCoreLibraryDesugaringEnabled = true isCoreLibraryDesugaringEnabled = true
targetCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17
@@ -40,10 +42,30 @@ android {
} }
buildTypes { buildTypes {
release { getByName("release") {
// TODO: Add your own signing config for the release build. // TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works. // Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug") signingConfig = signingConfigs.getByName("debug")
/// 20260928 - Without minifying.
/// Built build/app/outputs/flutter-apk/app-release.apk (54.3MB)
/// Built build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk (17.2MB)
/// Built build/app/outputs/flutter-apk/app-arm64-v8a-release.apk (19.8MB)
/// Built build/app/outputs/flutter-apk/app-x86_64-release.apk (21.2MB)
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
/// 20260928 - With minifying, helped some, but also used
/// in combination with `--obfuscate --split-debug-info=./debug-info/`
/// Built build/app/outputs/flutter-apk/app-release.apk (54.3MB)
/// Built build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk (16.1MB)
/// Built build/app/outputs/flutter-apk/app-arm64-v8a-release.apk (18.8MB)
/// Built build/app/outputs/flutter-apk/app-x86_64-release.apk (20.3MB)
} }
} }
} }
View File
Whitespace-only changes.
+1 -1
View File
@@ -1,5 +1,5 @@
AuthorName: 'Chad Michael "Hyperling" Greenwood' AuthorName: 'Chad Michael "Hyperling" Greenwood'
AuthorEmail: 'me@hyperling.com' AuthorEmail: 'me+sunset@hyperling.com'
AuthorWebSite: 'https://hyperling.com/about/' AuthorWebSite: 'https://hyperling.com/about/'
Donate: 'https://hyperling.com/donate/' Donate: 'https://hyperling.com/donate/'
Liberapay: 'HyperVegan' Liberapay: 'HyperVegan'
+49 -11
View File
@@ -15,6 +15,7 @@ function log {
function clean_flutter { function clean_flutter {
log "Cleaning..." log "Cleaning..."
flutter clean flutter clean
echo "Done!"
} }
## Variables ## ## Variables ##
@@ -41,12 +42,23 @@ fi
RELEASE="release/$name-$version" RELEASE="release/$name-$version"
echo "Running for '$RELEASE'." echo "Running for '$RELEASE'."
BUILD_OPTIONS=(
--release
--obfuscate
--split-debug-info=./debug-info/
--extra-gen-snapshot-options="--strip"
)
## Main ## ## Main ##
clean_flutter clean_flutter
# Linux
log "Building Linux Bundle..." log "Building Linux Bundle..."
flutter build linux set -x
flutter build linux ${BUILD_OPTIONS[@]}
set +x
log "Saving Linux Bundle..." log "Saving Linux Bundle..."
filename=$RELEASE.linux-bundle.zip filename=$RELEASE.linux-bundle.zip
@@ -56,15 +68,41 @@ fi
zip -r $filename build/linux/x64/release/bundle/* zip -r $filename build/linux/x64/release/bundle/*
ls -sh $filename ls -sh $filename
clean_flutter # Android
log "Building APK..." log "Building Universal APK..."
flutter build apk # Creates a generic (and large) app-release.apk
set -x
flutter build apk ${BUILD_OPTIONS[@]}
set +x
log "Saving APK..." #log "Saving Universal APK..."
filename=$RELEASE.apk #apk="build/app/outputs/flutter-apk/app-release.apk"
if [[ -e $filename ]]; then #filename=`basename $apk`
rm -v $filename #filename=${filename//app/${RELEASE}}
fi #if [[ -e $filename ]]; then
cp -v build/app/outputs/flutter-apk/app-release.apk $filename # rm -v $filename
ls -sh $filename #fi
#cp -v "$apk" "$filename"
#ls -sh "$filename"
log "Building Individual APKs..."
# Creates files such as build/app/outputs/flutter-apk/app-arm64-v8a-release.apk
set -x
flutter build apk ${BUILD_OPTIONS[@]} --split-per-abi
set +x
log "Saving APKs..."
for apk in `ls build/app/outputs/flutter-apk/app*release.apk`; do
#if [[ "$apk" == *"x86"* ]]; then echo "Skipping $apk" continue; fi
#log "APK: $apk"
filename=`basename $apk`
filename=${filename//app/${RELEASE}}
cp -v "$apk" "$filename"
ls -sh "$filename"
echo " "
done
# Finish
exit 0