Created
October 15, 2018 07:55
-
-
Save j3k0/28f60a7d5622508634d09f94c59d6dfc to your computer and use it in GitHub Desktop.
Generate an android release build with cordova
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 characters
#!/bin/bash | |
cd "$(dirname "$0")" | |
ROOT_DIR="$(pwd)" | |
FINAL_APK="${FINAL_APK:-$ROOT_DIR/android-release-$(date +%Y%m%d-%H%M).apk}" | |
KEYSTORE="${KEYSTORE:-$ROOT_DIR/android-release.keystore}" | |
if test ! -e "$KEYSTORE"; then | |
echo "ERROR: Keystore file $KEYSTORE not found." | |
echo "Set the \$KEYSTORE environment variable or copy a file called 'android-release.keystore' in this directory." | |
exit 1 | |
fi | |
if test -z "$KEYSTORE_ALIAS"; then | |
echo "$ERROR: \$KEYSTORE_ALIAS not set" | |
echo | |
echo "You can figure out the correct value by using the following command:" | |
echo "keytool -v -list -keystore \"$KEYSTORE\"" | |
exit 1 | |
fi | |
echo "Running from $ROOT_DIR" | |
# Exits on failure | |
set -e | |
cd "$ROOT_DIR" | |
# Generates a release build | |
echo cordova build android --release -- --keystore=\"$KEYSTORE\" --alias=\"$KEYSTORE_ALIAS\" | |
if test -z "$KEYSTORE_PASSWORD"; then | |
read -p "Please enter keystore password:" KEYSTORE_PASSWORD | |
fi | |
cordova build android --release -- --keystore="$KEYSTORE" --alias="$KEYSTORE_ALIAS" --storePassword="$KEYSTORE_PASSWORD" --password="$KEYSTORE_PASSWORD" | |
APK_PATH="$ROOT_DIR/platforms/android/app/build/outputs/apk/release/app-release.apk" | |
if test ! -e "$APK_PATH"; then | |
APK_PATH="$ROOT_DIR/platforms/android/build/outputs/apk/app-release.apk" | |
fi | |
rm -f "$FINAL_APK" | |
mv "$APK_PATH" "$FINAL_APK" | |
echo | |
echo Build is ready: | |
echo | |
echo "$FINAL_APK" | |
echo | |
echo | |
if [ "_$1" = _run ]; then | |
adb install -r "$FINAL_APK" | |
adb logcat | grep chromium | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment