Apps in background are crashing So, this happens to mostly every app, when they're in the background. Chrome tabs reload after reopening the app. Apps like Ingress look like they've just been started. Spotify even crashes, when it's in the background and I open Chrome.

So, before I reinstall the phone, what could be the issue? I've never installed any memory cleaning apps. I'm running stock 4.4.2 on a Moto G.

Chrome's crash log from ADB:

I/ActivityManager(  969): Start proc net.nurik.roman.dashclock for service net.nurik.roman.dashclock/com.google.android.apps.dashclock.DashClockService: pid=18611 uid=10126 gids={50126, 3003}
W/InputDispatcher(  969): channel '4303f310 com.android.chrome/com.google.android.apps.chrome.Main (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
E/InputDispatcher(  969): channel '4303f310 com.android.chrome/com.google.android.apps.chrome.Main (server)' ~ Channel is unrecoverably broken and will be disposed!
I/ActivityManager(  969): Process com.android.chrome (pid 17867) has died.
I/WindowState(  969): WIN DEATH: Window{4303f310 u0 com.android.chrome/com.google.android.apps.chrome.Main}
W/InputDispatcher(  969): Attempted to unregister already unregistered input channel '4303f310 com.android.chrome/com.google.android.apps.chrome.Main (server)'
W/WindowManager(  969): Force-removing child win Window{42ea6618 u0 SurfaceView} from container Window{4303f310 u0 com.android.chrome/com.google.android.apps.chrome.Main}
E/JavaBinder(  969): !!! FAILED BINDER TRANSACTION !!!
W/WindowManager(  969): Failed looking up window
W/WindowManager(  969): java.lang.IllegalArgumentException: Requested window android.os.BinderProxy@42ea6440 does not exist
W/WindowManager(  969):     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:7968)
W/WindowManager(  969):     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:7959)
W/WindowManager(  969):     at com.android.server.wm.WindowState$DeathRecipient.binderDied(WindowState.java:1047)
W/WindowManager(  969):     at android.os.BinderProxy.sendDeathNotice(Binder.java:493)
W/WindowManager(  969):     at dalvik.system.NativeStart.run(Native Method)
I/WindowState(  969): WIN DEATH: null


Ingress' crash log

I/ActivityManager(  969): Process com.nianticproject.ingress (pid 17260) has died.
I/WindowState(  969): WIN DEATH: Window{430e7c68 u0 com.nianticproject.ingress/com.nianticproject.ingress.NemesisActivity}
W/WindowManager(  969): Force-removing child win Window{431d43f0 u0 SurfaceView} from container Window{430e7c68 u0 com.nianticproject.ingress/com.nianticproject.ingress.NemesisActivity}
W/WindowManager(  969): Failed looking up window
W/WindowManager(  969): java.lang.IllegalArgumentException: Requested window android.os.BinderProxy@423cb8b0 does not exist
W/WindowManager(  969):     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:7968)
W/WindowManager(  969):     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:7959)
W/WindowManager(  969):     at com.android.server.wm.WindowState$DeathRecipient.binderDied(WindowState.java:1047)
W/WindowManager(  969):     at android.os.BinderProxy.sendDeathNotice(Binder.java:493)
W/WindowManager(  969):     at dalvik.system.NativeStart.run(Native Method)
I/WindowState(  969): WIN DEATH: null
I get this on MotoG 4.4.2 as well. It appears the MotoG has a very aggressive application culling in general. This link explains what the XDA group does about the problem.

In short, there is a 'minFree' system configuration file (sys/module/lowmemorykiller/minfree) which the OS uses to try and keep some minimum amount of memory free. Unfortunately, in stock MotoG 4.4.2 the setting is very aggressive and basically means only one application will be kept around (depending on memory footprint). In 4.4.4, this minimum amount is relaxed.

With rooting you can adjust the setting; or upgrade to 4.4.4. There's a helper app, MinFreeManager (requires root access), which can help adjust this settings file as well.