Ionic ios app stuck on splash screen - works in emulator not on iphone 5s device

I’m currently getting stuck on the splash screen when pushing to my iOS device. I’ve made sure to install ngCordova via bower install and all my ionic emulations are working as expected. Only when I deploy to an iOS device, does it get stuck on the splash screen. I’ve included the proper syntax for the splash screen in the config.xml file

<preference name="AutoHideSplashScreen" value="false" />
  <feature name="SplashScreen">
    <param name="ios-package" value="CDVSplashScreen" onload="true"/>

and I have the following in my main app.js file

.run(function($ionicPlatform, $cordovaSplashscreen, $timeout) {
  $ionicPlatform.ready(function() {

(not including the rest of the content in the .run)

ionic version - 1.2.8
cordova version - 4.0.0

Here is the output in xcode for the working iOS emulation:

2014-11-10 17:09:15.150 endevr[94986:627339] DiskCookieStorage changing policy from 2 to 0, cookie file: file:///Users/drlightx3/Library/Developer/CoreSimulator/Devices/7D2185B9-9897-41E8-B005-B0D35284F661/data/Containers/Data/Application/027864C5-CC64-4859-BCEA-48D8DD4B90A2/Library/Cookies/Cookies.binarycookies
2014-11-10 17:09:15.291 endevr[94986:627339] Apache Cordova native platform version 3.6.3 is starting.
2014-11-10 17:09:15.292 endevr[94986:627339] Multi-tasking -> Device: YES, App: YES
2014-11-10 17:09:15.304 endevr[94986:627339] Unlimited access to network resources
2014-11-10 17:09:15.631 endevr[94986:627339] [CDVTimer][splashscreen] 48.977017ms
2014-11-10 17:09:15.631 endevr[94986:627339] [CDVTimer][TotalPluginStartup] 49.114048ms
2014-11-10 17:09:15.691 endevr[94986:627339] Resetting plugins due to page load.
2014-11-10 17:09:15.886 endevr[94986:627339] Finished load of: file:///Users/drlightx3/Library/Developer/CoreSimulator/Devices/7D2185B9-9897-41E8-B005-B0D35284F661/data/Containers/Bundle/Application/6EE8A114-222C-4903-88EC-9EEF8853B76C/

Then, when I build to a an actual iPhone 5S I get the following:

2014-11-10 17:09:43.691 endevr[973:264078] DiskCookieStorage changing policy from 2 to 0, cookie file: file:///private/var/mobile/Containers/Data/Application/8512E3E3-FF06-4BDF-94DD-B999AD55ADCC/Library/Cookies/Cookies.binarycookies
2014-11-10 17:09:43.857 endevr[973:264078] Apache Cordova native platform version 3.6.3 is starting.
2014-11-10 17:09:43.859 endevr[973:264078] Multi-tasking -> Device: YES, App: YES
2014-11-10 17:09:43.868 endevr[973:264078] Unlimited access to network resources
2014-11-10 17:09:44.067 endevr[973:264078] [CDVTimer][splashscreen] 92.771947ms
2014-11-10 17:09:44.067 endevr[973:264078] [CDVTimer][TotalPluginStartup] 93.294024ms
2014-11-10 17:09:44.342 endevr[973:264078] Resetting plugins due to page load.
2014-11-10 17:09:44.696 endevr[973:264078] Finished load of: file:///private/var/mobile/Containers/Bundle/Application/2BD18E5C-94C7-467D-83D5-617E3BD15434/

looking at the last line of each output, it doesn’t seem like ui-router’s #/app/browse is getting hit on the iPhone 5S and I can’t figure out why. When I run ionic serve and ionic emulate ios everything renders fine, but once I push it to my actual phone, it hangs on the splash screen.

1 Like

I also tried to put an alert inside the following function

$ionicPlatform.ready(function() {

and in the emulators it triggers, however on the device the alert doesn’t trigger. I also tried to put an alert within the .run section and that didn’t even trigger either…

getting same thing. Remember anything that could have solved this issue?

Whenever I got odd startup issues in my Ionic apps, I fire up the Safari Web Inspector to take a look at the Safari console log on my device.

I don’t normally use Web Inspector because you cannot start the debug console until your app is already running on the device, but I learned a handy tip from another thread here, if you type in


in the Web Inspector console on your Mac, it forced the Ionic app to reload on the device, and you get all the startup errors logged to the console. I found that Web Inspector’s error reporting gave me far more detail than XCode did, and it helped me to sort out a few quirky startup issues that was causing me to pull my hair out.


Was there a fix for this? I don’t have any errors in Safari.

The same PR, no matter in the real devices or emulator, it just stuck on the splash screen. Any one solved this? Much thanks!

I have bumped into the same problem. Do you find any solution?

Hi CyberFerret,

Thanks for the suggestion. I have tried, but it’s quite odd that I just could not trigger window.location.reload() in the console when the app is stuck on splash screen.
But if the app starts to load the page(after the splash screen), then the window.location.reload() works fine.
Do you have any idea why this happens?

This, even though has been posted a long time, this has to be bumped 1 million time!!