summaryrefslogtreecommitdiff
path: root/build_apk.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build_apk.sh')
-rw-r--r--build_apk.sh20
1 files changed, 20 insertions, 0 deletions
diff --git a/build_apk.sh b/build_apk.sh
new file mode 100644
index 0000000..ce9707a
--- /dev/null
+++ b/build_apk.sh
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+ANDROID_PATH="/usr/lib/android-sdk/"
+BUILD_TOOLS="24.0.2"
+AAPT="${ANDROID_PATH}/build-tools/${BUILD_TOOLS}/aapt"
+DX="${ANDROID_PATH}/build-tools/${BUILD_TOOLS}/dx"
+ZIPALIGN="${ANDROID_PATH}/build-tools/${BUILD_TOOLS}/zipalign"
+APKSIGNER="/usr/bin/apksigner"
+PLATFORM="${ANDROID_PATH}/platforms/android-24/android.jar"
+
+echo "Translating in Dalvik bytecode..."
+$DX --dex --output=classes.dex obj
+
+echo "Making APK..."
+$AAPT package -f -m -F bin/hello.unaligned.apk -M AndroidManifest.xml -S res -I $PLATFORM
+$AAPT add bin/hello.unaligned.apk classes.dex lib/armeabi/librustcode.so
+
+echo "Aligning and signing APK..."
+$APKSIGNER sign --ks ~/.android/keys/release-key.keystore bin/hello.unaligned.apk
+$ZIPALIGN -f 4 bin/hello.unaligned.apk bin/hello.apk