In the head add this:
<script type="text/javascript" charset="utf-8">
// Wait for device API Libraries to load
function onBodyLoad()
{
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady()
{
navigator.splashscreen.show();
}
</script>
In the body tag call <body onload="onBodyLoad()">
Add this to the bottom of your index.html:
<script type="text/javascript">
setTimeout(function() {
navigator.splashscreen.hide();
}, 4000);
</script>
Verify this is set in config.xml
<preference name="AutoHideSplashScreen" value="false" />