xref: /expo/packages/@expo/prebuild-config/src/plugins/icons/withAndroidManifestIcons.ts (revision dfd15ebd)
  • Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import { AndroidConfig, ConfigPlugin, withAndroidManifest } from '@expo/config-plugins';
2import { ExpoConfig } from '@expo/config-types';
3
4export const withAndroidManifestIcons: ConfigPlugin = (config) =>
5  withAndroidManifest(config, (config) => {
6    config.modResults = setRoundIconManifest(config, config.modResults);
7    return config;
8  });
9
10export function setRoundIconManifest(
11  config: Pick<ExpoConfig, 'android'>,
12  manifest: AndroidConfig.Manifest.AndroidManifest
13): AndroidConfig.Manifest.AndroidManifest {
14  const isAdaptive = !!config.android?.adaptiveIcon;
15  const application = AndroidConfig.Manifest.getMainApplicationOrThrow(manifest);
16
17  if (isAdaptive) {
18    application.$['android:roundIcon'] = '@mipmap/ic_launcher_round';
19  } else {
20    delete application.$['android:roundIcon'];
21  }
22  return manifest;
23}
24

served by {OpenGrok

Last Index Update: Fri May 15 20:09:11 GMT 2026