for me, this happened when I had: android.os.DeadObjectException in the logs. (The value of the application has already died).
Check if you have something similar in your logs:
I/ActivityManager( 600): Restarting because process died: ActivityRecord{439f9588 u0 com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity} W/ActivityManager( 600): Exception when starting activity com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity W/ActivityManager( 600): android.os.DeadObjectException W/ActivityManager( 600): at android.os.BinderProxy.transact(Native Method) W/ActivityManager( 600): at android.app.ApplicationThreadProxy.scheduleLaunchActivity(ApplicationThreadNative.java:759) W/ActivityManager( 600): at com.android.server.am.ActivityStack.realStartActivityLocked(ActivityStack.java:1120) W/ActivityManager( 600): at com.android.server.am.ActivityStack.startSpecificActivityLocked(ActivityStack.java:1247)
... and if you look back so much in your magazines to find out why you are dying. To keep the application from dying, I had to move the intent filters:
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
from UnityPlayerProxyActivity to UnityPlayerNativeActivity
source share