- Install dependencies
- OpenJDK 11
- Python 2.6
- Download Android SDK
- Install SDK directory to
- Mac in
Library/Android/sdk
- Extract downloaded
tools
toLibrary/Android/sdk/tools
- Extract downloaded
- Mac in
- Add to you
~/.bashrc
-
export ANDROID_HOME=~/Library/Android/sdk
-
export ANDROID_SDK_ROOT=$ANDROID_HOME
-
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/cmdline-tools/8.0/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools/bin:$PATH
-
Ensure the variables are correctly set up via:
echo $ANDROID_HOME echo $ANDROID_SDK_ROOT echo $PATH
-
- Install dependencies through
sdkmanager
:\nsdkmanager "cmdline-tools;8.0" "platform-tools" "platforms;android-33" "build-tools;30.0.3" "emulator"
- Run
adb start-server
- Connect your android device and trust the
adb
connection on your device - Start meteor server
meteor run android-device --mobile-server=http://<your-ip>:3000
Created
September 13, 2023 15:14
-
-
Save leoc/069a14df5eb95671384c9fdeb6631395 to your computer and use it in GitHub Desktop.
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
#!/usr/bin/env bash | |
set -e | |
export ANDROID_HOME=~/Library/Android/sdk | |
export ANDROID_SDK_ROOT=$ANDROID_HOME | |
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/cmdline-tools/8.0/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools/bin:$PATH | |
meteor_server=${METEOR_SERVER:-https://my.app} | |
KEYSTORE_FILE=.keystore | |
METEOR_BUILD_DIR=tmp/android_build/bundle | |
APP_BUILD_DIR=$METEOR_BUILD_DIR/android/project/app/build/outputs/bundle/release | |
APP_NAME=$(grep name app/mobile-config.js | awk '{print $2}' | sed s/[\'\",]//g) | |
APP_VERSION=$(grep version app/mobile-config.js | awk '{print $2}' | sed s/[\'\",]//g) | |
APP_UNSIGNED_FILE=$APP_BUILD_DIR/app-release.aab | |
APP_SIGNED_FILE=../build/${APP_NAME}-${APP_VERSION}.aab | |
echo "Switching to app directory" | |
cd app | |
echo "Re-adding Android platform for a clean build environment ..." | |
meteor list-platforms | grep android > /dev/null && meteor remove-platform android | |
meteor list-platforms | grep ios > /dev/null && meteor remove-platform ios | |
meteor add-platform android | |
echo "Deleting everything in $METEOR_BUILD_DIR" | |
rm -rf $METEOR_BUILD_DIR | |
echo "Building to $METEOR_BUILD_DIR for server $meteor_server ..." | |
echo "meteor build $METEOR_BUILD_DIR --platforms android --server $meteor_server" | |
meteor build $METEOR_BUILD_DIR --platforms android --server "$meteor_server" | |
echo "Sign android app bundle ..." | |
jarsigner \ | |
-verbose \ | |
-sigalg SHA1withRSA \ | |
-digestalg SHA1 \ | |
-keystore $KEYSTORE_FILE \ | |
-storepass "<pass>" \ | |
-signedjar "$APP_SIGNED_FILE" \ | |
"$APP_UNSIGNED_FILE" \ | |
prod-test | |
echo "Built & signed ${APP_SIGNED_FILE}" | |
meteor list-platforms | grep android > /dev/null && meteor remove-platform android | |
echo "Removed Android platform" |
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
App.setPreference("android-minSdkVersion", "28"); | |
App.setPreference("android-compileSdkVersion", "33"); | |
App.setPreference("android-targetSdkVersion", "33"); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment