diff options
| author | MohamedBassem <me@mbassem.com> | 2024-12-28 17:58:55 +0200 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-12-28 17:59:51 +0200 |
| commit | 74962d3bab7e43d4fd5fd2d045b4f9b3e975b64e (patch) | |
| tree | b7b629e970113be9868f6990d8a8aba224318f86 /apps/mobile/plugins | |
| parent | cc708a4d567098ff32f2c4020a450daff7bb2067 (diff) | |
| download | karakeep-74962d3bab7e43d4fd5fd2d045b4f9b3e975b64e.tar.zst | |
fix(mobile): Mark the camera explicitly as not required in android manifest. Fixed #755.
Diffstat (limited to 'apps/mobile/plugins')
| -rw-r--r-- | apps/mobile/plugins/camera-not-required.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/apps/mobile/plugins/camera-not-required.js b/apps/mobile/plugins/camera-not-required.js new file mode 100644 index 00000000..75116604 --- /dev/null +++ b/apps/mobile/plugins/camera-not-required.js @@ -0,0 +1,23 @@ +const { withAndroidManifest } = require("@expo/config-plugins"); + +const withCameraNotRequired = (config) => { + return withAndroidManifest(config, async (config) => { + config.modResults = await setCustomConfigAsync(config, config.modResults); + return config; + }); +}; + +async function setCustomConfigAsync(_config, androidManifest) { + const usesFeature = androidManifest.manifest["uses-feature"] ?? []; + usesFeature.push({ + $: { + "android:name": "android.hardware.camera", + "android:required": "false", + }, + }); + androidManifest.manifest["uses-feature"] = usesFeature; + + return androidManifest; +} + +module.exports = withCameraNotRequired; |
