javaandroidsplash-screenwear-osgoogle-play-console

Issue found: Missing app icon in splash screen


Google playstore suddenly rejects App Update due to a supposedly missing splash screen icon.

Issue found: Missing app icon in splash screen

Your app does not show a 48x48dp app icon on a black background during app startup. For more information, see Branded launch.

This never was a problem before with previous versions of the app and suddenly after the launch of wear os 4, this happens. However, when opening the app (installed via adb), a splash screen with the icon does appear, just like with any other apps.

i tried adding in a custom splash screen, according to the guidelines with the correct dimensions, but google still rejects it. The manifest.xml hasnt changed, still pointing to my theme.xml, although now tried with a custom splash screen theme field.


Solution

  • Yes, google is being a b**** after wear os 4... my apps get reject for splash screen, scrollbar not showing, missing bezel scroll support...

    Anyway, here's the solution for you (at least that's what I'm doing and it is working / I tried other ways, but none worked for me):

    1. Add your app icon file to your drawables folder;
    2. Create a splash_background.xml on drawables folder and add the code:
    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="@android:color/black"/>
            </shape>
        </item>
        <item android:drawable="@drawable/APP_ICON_NAME_HERE"
            android:gravity="center"
            android:height="48dp"
            android:width="48dp"/>
    </layer-list>
    
    1. Create a themes.xml file, or add to yours, in the values folder and add the code:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <style name="SplashTheme" parent="@android:style/Theme.DeviceDefault">
            <item name="android:windowBackground">@drawable/splash_background</item>
        </style>
    
        <style name="MainTheme" parent="@android:style/Theme.DeviceDefault"></style>
    </resources>
    
    1. In your manifest add the following code to your main activity tag:
    android:theme="@style/SplashTheme"
    
    1. On the onCreate of your main activity class, before the "setContentView(...)" you change the theme back to normal, adding the code:
    setTheme(R.style.MainTheme);