diff options
author | Nick Manos <nick@manos.tech> | 2024-05-29 05:56:36 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-29 02:56:36 -0700 |
commit | 65ad16e394d0525d68e6fc8cd9508de4675c88d5 (patch) | |
tree | e698258d8942eb6a3e3df38de31f0d762c2ae73b | |
parent | 33de856c32711b2b5a83d5b27583eec0cc6e1248 (diff) | |
download | voidsky-65ad16e394d0525d68e6fc8cd9508de4675c88d5.tar.zst |
Change Android's MainActivity launchMode to singleTop (#4255)
* Add build config plugin to set .MainActivity launchMode * Change android:launchMode to standard * Revert "Change android:launchMode to standard" This reverts commit fddbc4e1b512ff9a55009e227f1f44e99ddabaf3. * adjust --------- Co-authored-by: Hailey <me@haileyok.com>
-rw-r--r-- | .github/workflows/bundle-deploy-eas-update.yml | 4 | ||||
-rw-r--r-- | app.config.js | 1 | ||||
-rw-r--r-- | plugins/withAndroidManifestLaunchModePlugin.js | 17 |
3 files changed, 20 insertions, 2 deletions
diff --git a/.github/workflows/bundle-deploy-eas-update.yml b/.github/workflows/bundle-deploy-eas-update.yml index 039b4150a..a684f525f 100644 --- a/.github/workflows/bundle-deploy-eas-update.yml +++ b/.github/workflows/bundle-deploy-eas-update.yml @@ -307,11 +307,11 @@ jobs: - name: ⬇️ Restore Cache id: get-base-commit uses: actions/cache@v4 - if: ${{ inputs.channel == 'testflight' }} + if: ${{ inputs.channel != 'testflight' && inputs.channel != 'production' }} with: path: most-recent-testflight-commit.txt key: most-recent-testflight-commit - name: ✏️ Write commit hash to cache - if: ${{ inputs.channel == 'testflight' }} + if: ${{ inputs.channel != 'testflight' && inputs.channel != 'production' }} run: echo ${{ github.sha }} > most-recent-testflight-commit.txt diff --git a/app.config.js b/app.config.js index eafacc6cc..0c3588c67 100644 --- a/app.config.js +++ b/app.config.js @@ -204,6 +204,7 @@ module.exports = function (config) { ], './plugins/withAndroidManifestPlugin.js', './plugins/withAndroidManifestFCMIconPlugin.js', + './plugins/withAndroidManifestLaunchModePlugin.js', './plugins/withAndroidStylesWindowBackgroundPlugin.js', './plugins/withAndroidStylesAccentColorPlugin.js', './plugins/withAndroidSplashScreenStatusBarTranslucentPlugin.js', diff --git a/plugins/withAndroidManifestLaunchModePlugin.js b/plugins/withAndroidManifestLaunchModePlugin.js new file mode 100644 index 000000000..45ab9aeb7 --- /dev/null +++ b/plugins/withAndroidManifestLaunchModePlugin.js @@ -0,0 +1,17 @@ +const {withAndroidManifest} = require('expo/config-plugins') + +module.exports = function withAndroidManifestLaunchModePlugin(appConfig) { + return withAndroidManifest(appConfig, function (decoratedAppConfig) { + try { + const mainApplication = + decoratedAppConfig.modResults.manifest.application[0] + const mainActivity = mainApplication.activity.find( + elem => elem.$['android:name'] === '.MainActivity', + ) + mainActivity.$['android:launchMode'] = 'singleTop' + } catch (e) { + console.error(`withAndroidManifestLaunchModePlugin failed`, e) + } + return decoratedAppConfig + }) +} |