summaryrefslogtreecommitdiff
path: root/build_android.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build_android.sh')
-rwxr-xr-xbuild_android.sh59
1 files changed, 31 insertions, 28 deletions
diff --git a/build_android.sh b/build_android.sh
index 814a4bb5..5db0a337 100755
--- a/build_android.sh
+++ b/build_android.sh
@@ -1,5 +1,6 @@
#!/bin/bash
+# App signining credentials in this file
NINJAKEYSTORE=~/Desktop/zmNinja.keystore
if [ ! -f "$NINJAKEYSTORE" ]; then
@@ -7,11 +8,14 @@ if [ ! -f "$NINJAKEYSTORE" ]; then
exit
fi
-
+# clean up past builds
rm -fr platforms/android/build/outputs/*
mkdir release_files
rm -f release_files/*
+# no arguments - build both
+# 1 == build crosswalk only
+# 2 == build native only
BUILD_MODE="all"
if [ "$1" = "1" ]; then
BUILD_MODE="xwalk"
@@ -23,70 +27,69 @@ if [ "$1" = "2" ]; then
echo "only building native view (5+)"
fi
+############ Crosswalk build ####################################
if [ "$BUILD_MODE" = "xwalk" ] || [ "$BUILD_MODE" = "all" ]; then
echo "Building Release mode for Xwalk android..."
echo "--------------------------------------------"
echo "Adding crosswalk..."
- #ionic plugin add cordova-plugin-crosswalk-webview --variable "XWALK_VERSION"="18+"
- ionic plugin add cordova-plugin-crosswalk-webview
-
-
- echo "Adding crosswalk cert plugin..."
- cordova plugin remove cordova-plugin-certificates
- cordova plugin add https://github.com/danjarvis/cordova-plugin-crosswalk-certificate
- ionic platform remove android
- ionic platform add android
+ #ionic plugin add cordova-plugin-crosswalk-webview --variable "XWALK_VERSION"="18+"
+ ionic plugin add cordova-plugin-crosswalk-webview
+
+ # crosswalk handles SSL certificate handling in a different way
+ # need to switch plugins
+ echo "Adding crosswalk cert plugin..."
+ cordova plugin remove cordova-plugin-certificates
+ cordova plugin add https://github.com/danjarvis/cordova-plugin-crosswalk-certificate
+ ionic platform remove android
+ ionic platform add android
cp "$NINJAKEYSTORE" platforms/android
ionic build android --release
-
+
+ # copy builds to my release directory
cp platforms/android/build/outputs/apk/android-x86-release-unsigned.apk release_files/
cp platforms/android/build/outputs/apk/android-armv7-release-unsigned.apk release_files/
echo "Copied files to release_files"
-
- #read -p "Press any key to jarsign... " -n1 -s
+ # sign them
cd release_files/
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ../platforms/android/zmNinja.keystore android-armv7-release-unsigned.apk zmNinja
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ../platforms/android/zmNinja.keystore android-x86-release-unsigned.apk zmNinja
-
- #read -p "Press any key to zipalign... " -n1 -s
-
~/Library/Android/sdk/build-tools/22.0.1/zipalign -v 4 android-x86-release-unsigned.apk zmNinja-x86-pre5.apk
~/Library/Android/sdk/build-tools/22.0.1/zipalign -v 4 android-armv7-release-unsigned.apk zmNinja-arm-pre5.apk
rm -f android-x86-release-unsigned.apk android-armv7-release-unsigned.apk
-
cd ..
fi
+############ Native web view build ###############################
if [ "$BUILD_MODE" = "native" ] || [ "$BUILD_MODE" = "all" ]; then
echo "Building Release mode for android 5+..."
echo "--------------------------------------------"
+
+ #clean up past build stuff
rm -fr platforms/android/build/outputs/*
echo "Adding default browser..."
- ionic plugin remove cordova-plugin-crosswalk-webview
+ ionic plugin remove cordova-plugin-crosswalk-webview
- cordova plugin remove cordova-plugin-crosswalk-certificate
- cordova plugin add https://github.com/hypery2k/cordova-certificate-plugin
- ionic platform remove android
- ionic platform add android
+ # use the right plugin for SSL certificate mgmt
+ cordova plugin remove cordova-plugin-crosswalk-certificate
+ cordova plugin add https://github.com/hypery2k/cordova-certificate-plugin
+ ionic platform remove android
+ ionic platform add android
cp "$NINJAKEYSTORE" platforms/android
+ # Make sure native builds are only deployed in devices < Android 5
ionic build android --release -- --minSdkVersion=21
+ # copy build to release folder and sign
cp platforms/android/build/outputs/apk/android-release-unsigned.apk release_files/
echo "Copied files to release_files"
-
- #read -p "Press any key to jarsign... " -n1 -s
cd release_files/
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ../platforms/android/zmNinja.keystore android-release-unsigned.apk zmNinja
-
- #read -p "Press any key to zipalign... " -n1 -s
-
- ~/Library/Android/sdk/build-tools/22.0.1/zipalign -v 4 android-release-unsigned.apk zmNinja.apk
+ ~/Library/Android/sdk/build-tools/22.0.1/zipalign -v 4 android-release-unsigned.apk zmNinja.apk
rm -f android-release-unsigned.apk
cd ..