Programmatically change the app icon in React Native.
npm install react-native-dynamic-app-iconSince iOS 10.3 Apple supports alternate App Icons to be set programmatically. This package integrates this functionality as React Native module. Android is not (yet?) supported.
- Install
- Add alternate icons
- Usage
- API
- License
```
$ npm install react-native-dynamic-app-icon
``
$ react-native link react-native-dynamic-app-icon
1. In XCode, in the project navigator, right click Libraries ➜ Add Files to [your project's name]node_modules
2. Go to ➜ react-native-dynamic-app-icon and add RNDynamicAppIcon.xcodeprojlibRNDynamicAppIcon.a
3. In XCode, in the project navigator, select your project. Add to your project's Build Phases ➜ Link Binary With Libraries
4. Run your project
Alternate icons have to be placed directly in your Xcode project rather than inside an asset catalogue. The @2x and @3x naming convention is supported as usual.
Copy the following to your info.plist and adjust it as needed. Omit the file extension (and @2x) part, Xcode will pick them accordingly. You can add more alternate icons by copying the an alternate block.
``
`javascript
import AppIcon from 'react-native-dynamic-app-icon';
AppIcon.setAppIcon('alternate');
AppIcon.getIconName(result => {
alert( 'Icon name: ' + result.iconName );
});
`
To change the app icon call this method with one of the alternate app icons keys specified in your plist.info. To reset to the default app icon pass null.
Returns a promise which resolves to a boolean.
Returns a callback with an object containing the icon name. Example: {iconName: 'default'}`.