diff --git a/README.md b/README.md index c5ff840..5dcff31 100644 --- a/README.md +++ b/README.md @@ -95,12 +95,39 @@ npx expo run:ios --device ### Android — local release APK +The release build embeds the JS bundle, so it runs standalone without Metro. +The default config signs with the debug keystore, which is fine for personal device testing. + ```bash cd android ./gradlew assembleRelease # Output: android/app/build/outputs/apk/release/app-release.apk ``` +**Install on a connected device via ADB:** + +```bash +# Add ADB to PATH (one-time, macOS) +echo 'export PATH="$PATH:$HOME/Library/Android/sdk/platform-tools"' >> ~/.zprofile +source ~/.zprofile + +# Install (device must have USB Debugging enabled) +adb install -r app/build/outputs/apk/release/app-release.apk +``` + +The `-r` flag reinstalls over any existing version on the device. + +**Android Studio note:** If Gradle sync fails with `Cannot run program "node"`, Android Studio +launched without Homebrew in its PATH. Fix by opening from the terminal: +```bash +open -a "Android Studio" android/ +``` +Or make it permanent (no sudo needed): +```bash +launchctl setenv PATH "/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" +``` +Then fully quit and reopen Android Studio. + To build a release AAB (required for Play Store): ```bash @@ -108,7 +135,13 @@ To build a release AAB (required for Play Store): # Output: android/app/build/outputs/bundle/release/app-release.aab ``` -**Signing:** Create a keystore and configure `android/app/build.gradle` with your signing config before a production release. See [React Native signing docs](https://reactnative.dev/docs/signed-apk-android). +**Production signing:** For Play Store or sharing with others, generate a proper keystore: +```bash +keytool -genkey -v -keystore android/app/bincio-rec.keystore \ + -alias bincio-rec -keyalg RSA -keysize 2048 -validity 10000 +``` +Then update `signingConfigs.release` in `android/app/build.gradle` to reference it. +See [React Native signing docs](https://reactnative.dev/docs/signed-apk-android). ### iOS — local release archive @@ -204,3 +237,7 @@ npx expo install npx expo prebuild --clean # regenerates android/ and ios/ cd ios && pod install && cd .. ``` + +## License + +[AGPL v3](LICENSE) — see the `LICENSE` file for details.