From 42f3fb9ed0aef8e45c1273c0afaef5b339eab5ed Mon Sep 17 00:00:00 2001 From: rory Date: Mon, 23 Feb 2026 18:48:03 -0800 Subject: [PATCH] Fix Android staging deploy: build AAB for Release, revert appName Two changes to fix staging Android deploys via Rock: 1. Pass aab: true to Rock for Release builds. Google Play requires AAB, and Fastlane used bundleRelease to produce it. The Rock migration inadvertently switched to assembleRelease (APK only). Additionally, Fullstory's Gradle plugin relocates the APK from build/outputs to build/intermediates, causing Rock's artifact detection to fail. Building AAB sidesteps this since Fullstory doesn't relocate bundles. 2. Revert the ineffective appName: 'app' from rock.config.mjs. The Mobile-Expensify Android project has no app/ subdirectory (it IS the app module), so the RN CLI config validation rejects it and APP_NAME stays empty regardless. Co-authored-by: Cursor --- .github/workflows/buildAndroid.yml | 1 + rock.config.mjs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/buildAndroid.yml b/.github/workflows/buildAndroid.yml index 628b26907fd..bfcd38dc79e 100644 --- a/.github/workflows/buildAndroid.yml +++ b/.github/workflows/buildAndroid.yml @@ -154,6 +154,7 @@ jobs: FORCE_NATIVE_BUILD: ${{ inputs.force-native-build == 'true' && github.run_id || '' }} with: variant: ${{ inputs.variant }} + aab: ${{ inputs.variant == 'Release' }} sign: true re-sign: true ad-hoc: ${{ inputs.variant == 'Adhoc' }} diff --git a/rock.config.mjs b/rock.config.mjs index ba496aea70f..3bfe70bca21 100644 --- a/rock.config.mjs +++ b/rock.config.mjs @@ -19,7 +19,7 @@ export default { bundler: pluginMetro(), platforms: { ios: platformIOS({sourceDir: isHybrid ? './Mobile-Expensify/iOS' : './ios'}), - android: platformAndroid({sourceDir: isHybrid ? './Mobile-Expensify/Android' : './android', appName: 'app'}), + android: platformAndroid({sourceDir: isHybrid ? './Mobile-Expensify/Android' : './android'}), }, fingerprint: { env: ['USE_WEB_PROXY', 'PUSHER_DEV_SUFFIX', 'SECURE_NGROK_URL', 'NGROK_URL', 'USE_NGROK', 'FORCE_NATIVE_BUILD'],