I am running Apache Cordova 3.6.3-0.2.13. And I try to get the splash screens working. I have followed the documentation on http://cordova.apache.org/docs/en/3.6.0/config_ref_images.md.html#Icons%20and%20Splash%20Screens. And the icons are working, but no success for the splash screens. We are also using the Ionic framework (version 1.2.8) on top of Cordova.
What I have done:
Added icons and splash screens to config.xml from the project root:
<preference name="SplashScreen" value="splash"/>
<preference name="SplashScreenDelay" value="10000"/>
<platform name="android">
<icon src="icons/icon.png"/>
<!-- you can use any density that exists in the Android project -->
<splash src="icons/android-splash-land-hdpi.png" density="land-hdpi"/>
<splash src="icons/android-splash-land-ldpi.png" density="land-ldpi"/>
<splash src="icons/android-splash-land-mdpi.png" density="land-mdpi"/>
<splash src="icons/android-splash-land-xhdpi.png" density="land-xhdpi"/>
<splash src="icons/android-splash-port-hdpi.png" density="port-hdpi"/>
<splash src="icons/android-splash-port-ldpi.png" density="port-ldpi"/>
<splash src="icons/android-splash-port-mdpi.png" density="port-mdpi"/>
<splash src="icons/android-splash-port-xhdpi.png" density="port-xhdpi"/>
</platform>
Ofcourse the icons
directory exists and also the files are in place. When I build the project with ionic run android
or cordova run android
. The build process also creates the icons and splash screens into the platforms/android/res/drawable
directory!
Also the config file located at platforms/android/res/xml/config.xml
is correctly updated and the <preference>
and <icon>
and <splash>
elements are in place.
I also tried with the org.apache.cordova.splashscreen
plugin and also no success. I have added the plugin with ionic plugin add org.apache.cordova.splashscreen
and also added onDeviceReady
the code navigator.splashscreen.show();
. But this also shows nothing.
What am I missing here?
After carefully following the PhoneGap CLI splash screen instructions, my Android splash screen was still not showing up. I then looked at build.gradle under platforms/android and noticed that changes I made to the defaultConfig block were causing changes to AndroidManifest.xml that ultimately prevented the splash screen from working. Below is the defaultConfig block I was using:
When I removed this block from build.gradle, the splash screen started working again.
I'd faced same issue and I've fixed it by using following configuration :-
install splash screen plugin
Next we need to add following preference in config.xml,
Add the Splashscreen images to folders like below
land-ldpi is not a density but a qualifier
Therefore the correct each splash tag as below:
After above configuration, below step is very important,
I had to install the splash screen plugin to make it work
cordova plugin add cordova-plugin-splashscreen
as well as adding
<preference name="SplashScreen" value="screen" />
<preference name="SplashScreenDelay" value="2000" />
Just had this problem myself. Change this
to
This fixed it.
source: http://forum.ionicframework.com/t/need-help-with-displaying-splash-screen-on-android-cordova-3-6/10436/12
2019 February end:
Only two things I did and it worked:
Install plugin:
cordova plugin add cordova-plugin-splashscreen
Add below to config.xml, have corresponding images
(1st splash line is a generic screen size, if you want)
I solved the problem by adding default splash tag
Add this to config.xml in the root destination or in www/config.xml