diff options
author | Jan-Olof Eriksson <jan-olof.eriksson@iki.fi> | 2024-03-11 14:52:33 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-11 14:52:33 +0200 |
commit | 4a2251f48bd51d8bd427d21f0dd697c8d43d7856 (patch) | |
tree | 17b7d68f0a19f54313607257de79accc7b6daf4c /plugins/withAndroidManifestFCMIconPlugin.js | |
parent | cbc65247ae57502356165a5d51270bd8d19fd9a5 (diff) | |
parent | 596e744d4177d3be6defeef68f202a70baaf6e37 (diff) | |
download | voidsky-4a2251f48bd51d8bd427d21f0dd697c8d43d7856.tar.zst |
Merge branch 'bluesky-social:main' into main
Diffstat (limited to 'plugins/withAndroidManifestFCMIconPlugin.js')
-rw-r--r-- | plugins/withAndroidManifestFCMIconPlugin.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/plugins/withAndroidManifestFCMIconPlugin.js b/plugins/withAndroidManifestFCMIconPlugin.js new file mode 100644 index 000000000..066a975d8 --- /dev/null +++ b/plugins/withAndroidManifestFCMIconPlugin.js @@ -0,0 +1,37 @@ +const {withAndroidManifest} = require('expo/config-plugins') + +module.exports = function withAndroidManifestFCMIconPlugin(appConfig) { + return withAndroidManifest(appConfig, function (decoratedAppConfig) { + try { + function addOrModifyMetaData(metaData, name, resource) { + const elem = metaData.find(elem => elem.$['android:name'] === name) + if (elem === undefined) { + metaData.push({ + $: { + 'android:name': name, + 'android:resource': resource, + }, + }) + } else { + elem.$['android:resource'] = resource + } + } + const androidManifest = decoratedAppConfig.modResults.manifest + const metaData = androidManifest.application[0]['meta-data'] + addOrModifyMetaData( + metaData, + 'com.google.firebase.messaging.default_notification_color', + '@color/notification_icon_color', + ) + addOrModifyMetaData( + metaData, + 'com.google.firebase.messaging.default_notification_icon', + '@drawable/notification_icon', + ) + return decoratedAppConfig + } catch (e) { + console.error(`withAndroidManifestFCMIconPlugin failed`, e) + } + return decoratedAppConfig + }) +} |