sign-release-build 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/bash
  2. # Script to sign the APK. Only needed by Jack Palevich.
  3. # command line build script for building release version
  4. # This will only work on my (Jack Palevich) computer, because it
  5. # requires the private key store used to sign the release version
  6. # of Terminal Emulator for Android.
  7. set -e
  8. ANDROID_TERMINAL_EMULATOR_KEYSTORE="$HOME/Documents/workspace/keystore/jackpal.keystore"
  9. ZIPALIGN="/Users/jack/Library/Android/sdk/build-tools/21.1.2/zipalign"
  10. if [ ! -f "$ANDROID_TERMINAL_EMULATOR_KEYSTORE" ]; then
  11. echo "Release keystore file is missing at ${ANDROID_TERMINAL_EMULATOR_KEYSTORE}. Cannot build release build."
  12. exit 1
  13. fi
  14. if [ ! -f "$ZIPALIGN" ]; then
  15. echo "Zipalign tool is missing at ${ZIPALIGN}. Cannot build release build."
  16. exit 1
  17. fi
  18. DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
  19. APKDIR="$DIR/../term/build/outputs/apk"
  20. if [ ! -d "$APKDIR" ]; then
  21. echo "No APK directory $APKDIR"
  22. exit 1
  23. fi
  24. cd "$APKDIR"
  25. jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 \
  26. -keystore "$ANDROID_TERMINAL_EMULATOR_KEYSTORE" \
  27. -signedjar term-release-signed.apk \
  28. term-release-unsigned.apk jackpal.keystore
  29. # Verify signature
  30. # jarsigner -verify -verbose -certs term-release-signed.apk
  31. # Align for faster loading.
  32. rm -f Term.apk
  33. "$ZIPALIGN" -v 4 term-release-signed.apk Term.apk
  34. echo "Signed-and-aligned APK:"
  35. echo `pwd`/Term.apk