#!/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"