Getting Expo app icon for standalone builds instead of my app icon

Hi Guys,

I’m trying to build a standalone app (android) with expo but I get an apk with the expo icon instead of my specified icon.

here’s my app.json

"android": {
            "icon": "./assets/icons/app-icon.png",
            "package": "PACKAGE",
            "versionCode": V,
            "config": {
                "googleMaps": {
                    "apiKey": "KEY_HERE"
                },
                "branch": {
                    "apiKey": "KEY_HERE"
                }
            },
            "permissions": [ "ACCESS_COARSE_LOCATION", "ACCESS_FINE_LOCATION", "CAMERA", "READ_EXTERNAL_STORAGE", "READ_INTERNAL_STORAGE", "WRITE_EXTERNAL_STORAGE" ]
        },
3 Likes

Yea exactly, the same problem - I have with Exp SDK 24 and latest exp toolchain

hey @teamokhi any luck with this issue? Are you running exp v 47.1.1 as well with SDK 24?

Hi @karanmartian, unfortunately no luck with this one yet. I’m on SDK 23, exp v 46.0.3

so this is definitely not SDK specific, because it was working fine when I last published it with SDK 23, i am on SDK 24 now. Did you also include a top level icon property other than the one you have inside android? I just downgraded my exp to v 46.0.4 and trying again. I wonder if this is something on the Expo server side and is a universal problem.

@teamokhi were you having this issue before? I am sure you must have had successful builds before this. What was your config then u remember?

@karanmartian I’ve done dozens of successful builds only thing I do change is the version number and build numbers. Icon has always remained the same. This is the first time its happened…I suspect its something to do with the release of v24

I’ve included the top level icon property as well. Must be something server side

@teamokhi yea i suspect the same, its server side. so any ideas for a temporary workaround this issue. Its a major issue stopping deployment, a lot of users shud be facing this. Are you seeing this on iOS as well?

@karanmartian Just made and submitted a build for iOS with the correct icon. Guess this is an android specific problem. Only workaround i’ve done is to publish the application on my production channel so android users will get the update without having to resubmit another apk.

@teamokhi thanks for that! well unfortunately I had to upgrade to SDK 24 to fix a bug available only with sdk 24 which cannot be backported to sdk 23. so since sdk was changed, I have to make a new build i guess?

@karanmartian I’m sure they’ll fix it soon, we should really be able to do our own builds with exp to avoid such problems.

@teamokhi yea they have their local build toolchain but it only runs on Mac i guess with specific versions of node and npm. Its a much needed thing though i agree.

@teamokhi so the workaround I am going with right now is this until the Expo guys fix the server:

  1. Grab the keystore from Expo:
    exp fetch:android:keystore

  2. Then use the APK Icon Editor to easily replace the expo icon for all sizes. Ironically i see that the apk that the new expo server is generating sees your icon only in the HDPI (72x72) and other sizes have the default expo icon. So I changed it accordingly.

  3. Finally within APK Icon Editor and using the keystore obtained above I repack the APK.

What say?

https://github.com/expo/expo/issues/1112#issuecomment-351801111

1 Like

Hey Jesse. Thanks for fixing the issue!

However I still have a problem. I started a build just before you updated the runners and now it seems like it’s stuck. The build has been in progress for about two hours. Do you think you could cancel it manually for us?

I don’t have a buildId, but the target is: @mutualr/mutual

Cheers

EDIT: The build was canceled, thanks!

1 Like

Solution is to change adtive-icon from android section given below
Capture

Please I am having this issue after building a standalone android app- sdk 38.

Any help please will be appreciated.

Here’s what I have tried: Cleared the cache & rebuilt
I can also confirm that my app.json settings are correctly mapped to the icon. The change was sudden, all was well until now