π± Mobile Deployment - Quick Reference (Current)
OTA updates (GitHub Actions)β
- Merge to
betaβ publisheseas update --branch beta - Merge to
alphaβ publisheseas update --branch alpha - Merge to
mainβ publisheseas update --branch production
Skip OTA publish: include [no deploy] in the commit message.
Local Android emulator launchβ
Use the Android-specific local scripts when running the mobile app against the local API from an emulator.
Recommended daily flowβ
Terminal 1:
cd attunelogic-mobile/attunelogic-mobile
npm run start:android
Terminal 2:
cd attunelogic-mobile/attunelogic-mobile
npm run android
One-command local native buildβ
cd attunelogic-mobile/attunelogic-mobile
npm run dev-build:local:android
What these scripts doβ
npm run start:android- switches to
env:android - starts Expo dev client Metro with cache clear
- prevents Expo dotenv auto-merging from overriding the generated Android env
- switches to
npm run android- runs the native Android build/install flow
npm run dev-build:local:android- combines
env:androidwithexpo run:android
- combines
Importantβ
Do not use npm start for Android emulator work. That script switches the app
back to env:local, which points the API to localhost instead of the Android
emulator host.
Expected Android API URL:
API_URL=http://10.0.2.2:8080/api/v1
Native builds (local)β
Trigger builds by pushing a build/* branch (local pre-push hook queues EAS build):
git checkout -b build/beta
git push origin build/beta
git checkout -b build/alpha
git push origin build/alpha
git checkout -b build/production
git push origin build/production
Skip the hook:
SKIP_EAS_PREPUSH=1 git push
Required GitHub Secretβ
EXPO_TOKEN
Versioningβ
Run only when preparing a native build:
npm run release
# or:
npm run release:patch
npm run release:minor
npm run release:major