Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cordova 3.4 iOS white screen after splash

I have been looking around at a few different posts on here concerning this issue and nothing has solved my problem.

After my splash screen loads and displays for ~2 seconds there is a white screen that shows for about 2 seconds and then the app content displays.

This issue only exists on iOS and only when I run the emulator on 3.5" with iOS 6.1 and 7.

I have

<preference name="AutoHideSplashScreen" value="false" /> 

so I can manually control when the splash screen hides in the deviceready event as such:

function onDeviceReady() {
    setTimeout(function () {navigator.splashscreen.hide()},2000);
        //more stuff
}

The problem is that this doesn't stop splashscreen from hiding prematurely. I see the exact same behavior except the loading spinner does disappear after 2000.

Sooo..what the heck is going on?

like image 325
Panda4Man Avatar asked Mar 09 '14 18:03

Panda4Man


1 Answers

I have the same problem (Cordova 3.4), but I solved it here.

It seems to be some kind of bug in CDVSplashScreen. Notice how it says in the Output that it couldn't find the image "Default-Portrait". (It should be looking for another file, "Default", not "Default-Portrait".)

WARNING: The splashscreen image named Default-Portrait was not found

What I did was the following:

  • Create a new splash screen named Default-Portrait@2x~iphone.png (a copy of Default@2x~iphone.png) and add it to the splash directory under Resources. (If you need to support iOS 6 you'll probably need a Default-Portrait~iphone.png file as well.) Don't just rename the file, or Xcode might not build your project due to a missing file.

  • Ensure that you also make sure that this new file is in your project list. (I didn't rebuild the project with cordova build ios so I had to drag the file from finder to the project files in Xcode. Not sure if rebuilding automatically adds it to your Xcode project.)

This should solve your problem.

I just switched to Xcode 5.1 and iOS 7.1 and Cordova has some issues with the new SDK as well. If you stumble upon some issues with Xcode 5.1 & iOS 7.1, I would also like to link you to the following page.

like image 125
Nico Verbruggen Avatar answered Oct 26 '22 13:10

Nico Verbruggen