Search code examples
androidcordovasplash-screen

Cordova 5.1.1 Splashscreen not working


I am trying to get the splashscreen work on my android device (Redmi 1S, Android Version 4.4.4 KTU84P). The app runs fine on my device, but the splashscreen does not appear. The splashscreen images gets copied and renamed as "screen.png" into the respective "platforms\android\res\drawable*" directories. I have not installed any splashscreen plugin for cordova. Below is the content from config.xml at project root directory.

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.victor.workshop" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>Workshop</name>
    <description>
        A sample Apache Cordova application that responds to the deviceready event.
    </description>
    <author email="[email protected]" href="http://cordova.io">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <plugin name="cordova-plugin-whitelist" version="1" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />   

    <platform name="android">
        <allow-intent href="market:*" />
        <icon src="res/android/icons/xhdpi.png"/>
        <icon src="res/android/icons/ldpi.png" density="ldpi" />
        <icon src="res/android/icons/mdpi.png" density="mdpi" />
        <icon src="res/android/icons/hdpi.png" density="hdpi" />
        <icon src="res/android/icons/xhdpi.png" density="xhdpi" />

        <splash src="res/android/splashscreens/land-hdpi.png" density="land-hdpi"/>
        <splash src="res/android/splashscreens/land-ldpi.png" density="land-ldpi"/>
        <splash src="res/android/splashscreens/land-mdpi.png" density="land-mdpi"/>
        <splash src="res/android/splashscreens/land-xhdpi.png" density="land-xhdpi"/>

        <splash src="res/android/splashscreens/port-hdpi.png" density="port-hdpi"/>
        <splash src="res/android/splashscreens/port-ldpi.png" density="port-ldpi"/>
        <splash src="res/android/splashscreens/port-mdpi.png" density="port-mdpi"/>
        <splash src="res/android/splashscreens/port-xhdpi.png" density="port-xhdpi"/>
    </platform>


    <preference name="SplashScreen" value="screen" />
    <preference name="SplashScreenDelay" value="10000" />

</widget>

Any help or pointer appreciated. Thanks in advance.


Solution

  • The splash screen plugin is required since cordova android 4.0 to show the splash screen

    Major Changes

    Splash screen functionality is now provided via plugin

    You will need to add the new cordova-plugin-splashscreen plugin to continue using a splash screen

    https://cordova.apache.org/announcements/2015/04/15/cordova-android-4.0.0.html

    So, install it with

    cordova plugin add cordova-plugin-splashscreen
    

    And everything should just work after that