How to trouble shoot when IOS app stuck at Splash Screen and app froze

Hi all,

I recently noticed that the app sometimes stuck on the Splash Screen. No console errors shown in the Xcode.

And sometimes even when the Splash Screen hides, the app just frozed. I checked the system log and post my questions here, sadly no one responses T.T :
APP Froze issue

I have also tried to debug the real device, hoping to get more error info by using ionic run ios -l -c -s, but the recent ios-deploy would just stuck on the splash screen, dead end again.

So here I am, totally lost. How can I trouble shoot the errors? Can some one please share some XCode debug tips with us?

Thanks verrrrrrrry much!

Hi, i am still fresh from the boat myself. But this is what I will do.

  1. Ionic serve - use chrome dev tool. Very useful to find codes that aren’t going to work on app. But keep in mind, some codes are not mean for browser so it will throw error. But the closest and fast to find error.
  2. Work backward to last it was working or go back in version and copy paste back in.
  3. Remove plugins, reinstall them and run. One at a time, see which one is going wrong. I found out splashscreen plugin bloated my app when I used the latest update. Have no idea why, so working on it.
  4. If use on real device, turn on sofari advance web inspector. After app is up, either use chrome device inspector or sofari inspect.
  5. Phone gap tool, which I read somewhere.
  6. I use alert() or console.log() a lot. Checking where the codes stop working.
    Etc…

I spent two days try to work out why my app wasn’t working and kept freeze up. At the end it was just not working with cordova@4.0.0, so I went back to 3.9.2. I am still confuse.

I find Xcode is the worst to use finding errors and good luck.

This solved it for us, it is caused by low memory.

https://github.com/driftyco/ionic/issues/5324

Solution is to switch to cordova-ios@4.1.0

1 Like

Yes, this solves the issue. Thanks very much!!!

Thanks very much for your suggestions. But my issue occurs before the web inspector loads anything, it’s more like native debugging. But thanks anyway.