Files
SpotiFLAC-Mobile/scripts/build_android.sh
T

37 lines
1.1 KiB
Bash

#!/usr/bin/env bash
# Build the supported Android release APKs for SpotiFLAC Mobile.
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
OUTPUT_DIR="$PROJECT_DIR/build/app/outputs/flutter-apk"
cd "$PROJECT_DIR"
SPOTIFLAC_DISCORD_SDK_DIR="$(python3 scripts/prepare_discord_sdk.py)"
export SPOTIFLAC_DISCORD_SDK_DIR
BUILD_GIT_COMMIT="$(git rev-parse --short=8 HEAD)"
flutter build apk \
--release \
--split-per-abi \
--target-platform android-arm,android-arm64 \
--dart-define="GIT_COMMIT=$BUILD_GIT_COMMIT" \
"$@"
for target in armeabi-v7a arm64-v8a universal; do
apk="app-$target-release.apk"
abis="$target"
if [[ "$target" == "universal" ]]; then
apk=app-release.apk
abis=armeabi-v7a,arm64-v8a
fi
if [[ ! -f "$OUTPUT_DIR/$apk" ]]; then
echo "Error: expected APK was not created: $OUTPUT_DIR/$apk" >&2
exit 1
fi
python3 scripts/check_backend_apk.py "$OUTPUT_DIR/$apk" \
--backend rust --abis "$abis" --require-discord
done
echo "Built Android release APKs in $OUTPUT_DIR"