compile, further enhance the script as well as add space-saving options and platform specific APKs.
This commit is contained in:
1 parent
03f9e2fa56
commit
79d9da8285
1 file changed
+49
-11
+49
-11
@@ -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
|
||||||
Reference in new issue
Block a user