I’m constructing a React Native app utilizing Expo and submitting it to the iOS App Retailer by way of the EAS Construct service. I’m utilizing the Expo Push Notification service to ship push notifications, however on iOS, all notifications present the default Expo Go brand because the notification icon as a substitute of my customized app icon.
Right here’s what I’ve tried:
- My app.json file specifies a customized icon path underneath “icon” and “notification”.
- I’ve confirmed the icon path is right and that the icon file is at the very least 1024×1024 pixels.
- I used expo begin -c to clear the cache and made certain the icon modifications are utilized.
- I additionally rebuilt the app with eas construct –platform ios and examined on a bodily system.
- I even went so far as organising a distant macOS setting on MacStadium to attempt to modify the code instantly in Xcode. Nevertheless, earlier than I dive too deep into this strategy, I need to get some recommendation on whether or not there’s one thing I might need missed or an easier answer to make sure the customized app icon seems in notifications.
Expo SDK Model: “~51.0.9”
Right here is my app.json
:
{
"expo": {
"identify": "-------------------",
"slug": "--------------------",
"model": "4.5.0",
"orientation": "portrait",
"icon": "./belongings/pictures/academy-logo.png",
"scheme": "--------------------",
"userInterfaceStyle": "computerized",
"splash": {
"picture": "./belongings/pictures/Black-OffWhite.jpg",
"resizeMode": "comprise",
"backgroundColor": "#ffffff"
},
"ios": {
"supportsTablet": true,
"bundleIdentifier": "--------------------------",
"buildNumber": "4.5",
"googleServicesFile": "./GoogleService-Information.plist",
"infoPlist": {
"NSCameraUsageDescription": "We want entry to your digicam to scan QR codes for session check-ins.",
"NSPhotoLibraryUsageDescription": "We want entry to your pictures to will let you add an avatar or profile picture.",
"NSLocationWhenInUseUsageDescription": "We want your location to indicate you close by classes and enhance your expertise.",
"NSPushNotificationsUsageDescription": "We want entry to ship you push notifications about session updates and vital bulletins.",
"NSContactsUsageDescription": "-------------------- wants entry to your contacts so it can save you our telephone quantity for straightforward steadiness reloads.",
"CFBundleDisplayName": "---------------------"
}
},
"android": {
"adaptiveIcon": {
"foregroundImage": "./belongings/pictures/academy-logo.png",
"backgroundColor": "#ffffff"
},
"permissions": [
"CAMERA",
"RECORD_AUDIO",
"ACCESS_FINE_LOCATION",
"ACCESS_COARSE_LOCATION",
"READ_EXTERNAL_STORAGE",
"WRITE_EXTERNAL_STORAGE",
"READ_CONTACTS",
"WRITE_CONTACTS"
],
"package deal": "--------------------------",
"versionCode": 3,
"config": {
"googleMaps": {
"apiKey": "--------------------------------------"
}
}
},
"notification": {
"icon": "./belongings/pictures/academy-logo.png",
"shade": "#0baf9a",
"androidMode": "default",
"androidCollapsedTitle": "New messages"
},
"internet": {
"bundler": "metro",
"output": "static",
"favicon": "./belongings/pictures/favicon.png"
},
"plugins": [
"expo-router",
"expo-font",
[
"expo-camera",
{
"cameraPermission": "Allow ---------------------- to access your camera to scan QR codes."
}
],
[
"expo-notifications",
{
"icon": "./assets/images/academy-logo.png",
"color": "#ffffff",
"iosDisplayInForeground": true
}
],
[
"expo-build-properties",
{
"android": {
"extra": {
"googleMapsApiKey": "-------------------------------------------"
}
}
}
]
],
"experiments": {
"typedRoutes": true
},
"additional": {
"router": {
"origin": false
},
"eas": {
"projectId": "e29f5424-af72-4b8e-ad96-6673933c3131"
}
}
}
}