Expo hangs waiting for a promise on Android and iPhone, but not in remote debug mode

Ok, I need to refactor this question a bit. My question is the same but I figured out that it is not the promise that is causing the issue, it is the call to redux dispatch() that is causing this issue. I was thrown because the console.log() right before dispatch never fired and thought it hadn’t made it to the dispatch().

I’ll research it from that angle, but it still is baffling why it only works when I am in remote JS debugging mode on the device.


On another post I found a way to get at the log files in android and found where it called “time of death” on Expo:

9-26 17:33:06.871 1595 5410 I ActivityManager: Process host.exp.exponent (pid 11384) has died(1179,395)
09-26 17:33:06.871 1595 5410 D ActivityManager: cleanUpApplicationRecord – 11384
09-26 17:33:06.880 1595 5410 W ActivityManager: Force removing ActivityRecord{639bbaed0 u0 host.exp.exponent/.experience.ExperienceActivity t16648}: app died, no saved state
09-26 17:33:06.883 1595 2435 W InputDispatcher: channel ~ Consumer closed input channel or an error occurred. events=0x9
09-26 17:33:06.896 1595 2435 E InputDispatcher: channel ~ Channel is unrecoverably broken and will be disposed!
09-26 17:33:06.917 1595 5417 I WindowManager: WIN DEATH: Window{86e5b49d0 u0 host.exp.exponent/host.exp.exponent.experience.HomeActivity}
09-26 17:33:06.917 1595 5410 W MultiScreenManagerService: moveTaskBackToDisplayIfNeeded(): root is not base activity
09-26 17:33:06.922 1595 4595 D InputTransport: Input channel destroyed: fd=483
09-26 17:33:06.922 1595 5417 W InputDispatcher: Attempted to unregister already unregistered input channel
09-26 17:33:06.926 4491 4491 D InputTransport: Input channel destroyed: fd=81
09-26 17:33:06.934 7337 7363 I TrayUsageStatesWatcher: notePauseComponent : ComponentInfo{host.exp.exponent/host.exp.exponent.experience.ExperienceActivity}
09-26 17:33:06.936 1595 5410 D GameManagerService: sem_perfomance_mode: 0
09-26 17:33:06.940 16035 16035 D SamsungTTS: onDestroy()
09-26 17:33:06.965 1595 1960 W art : Suspending all threads took: 8.423ms
09-26 17:33:06.972 1595 5417 I WindowManager: Destroying surface Surface(name=host.exp.exponent/host.exp.exponent.experience.HomeActivity) called by com.android.server.wm.WindowStateAnimator.destroySurface:2847 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:1078 com.android.server.wm.WindowState.removeLocked:1776 com.android.server.wm.WindowManagerService.removeWindowInnerLocked:2876 com.android.server.wm.WindowManagerService.removeWindowLocked:2816 com.android.server.wm.WindowState$DeathRecipient.binderDied:2196 android.os.BinderProxy.sendDeathNotice:701
09-26 17:33:06.977 721 751 I SurfaceFlinger: id=6463 Removed IomeActivit (2/9)
09-26 17:33:06.978 721 1153 I SurfaceFlinger: id=6463 Removed IomeActivit (-2/9)
09-26 17:33:07.024 1595 5417 D InputTransport: Input channel destroyed: fd=418
09-26 17:33:07.026 1595 5416 I WindowManager: WIN DEATH: Window{aaf21fcd0 u0 host.exp.exponent/host.exp.exponent.experience.ExperienceActivity}
09-26 17:33:07.030 1595 1960 I art : Explicit concurrent mark sweep GC freed 113668(6MB) AllocSpace objects, 8(160KB) LOS objects, 15% free, 86MB/102MB, paused 14.059ms total 425.447ms
09-26 17:33:07.042 1595 5416 D InputDispatcher: Focus left window: 11384