Project crashes on android

Here’s the part of the logcat that always shows up when it crashes. This all started when I tried using a character from a VR multiplayer demo in my mobile offline game. I went through and re-built the character from scratch so I would be able to remove the multiplayer/VR parts and it seemed to work but then this problem just pops up out of the blue. Once this problem starts, the only sure way to fix it is to make a new level and start with a different character.

08-04 23:00:43.380 17651-17651/? E/ActivityThread﹕ Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@425eb4b0 that was originally bound here
android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@425eb4b0 that was originally bound here
at android.app.LoadedApk$ServiceDispatcher.(LoadedApk.java:979)
at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:873)
at android.app.ContextImpl.bindServiceAsUser(ContextImpl.java:1833)
at android.app.ContextImpl.bindService(ContextImpl.java:1821)
at android.content.ContextWrapper.bindService(ContextWrapper.java:503)
at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:158)
at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:146)
at com.android.emailcommon.service.AccountServiceProxy.restoreAccountsIfNeeded(AccountServiceProxy.java:135)
at com.android.exchange.ExchangeService$11.run(ExchangeService.java:4645)
at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:1053)
at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:1050)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:841)

Hello Death Strike,

Could you please inform me of which exact version of the Unreal Engine that you’re using? Please upload your logs from your device and any error logs thrown from the engine over this specific issue. Please upload them as a .txt file as that’s easier to sort through. Have you been able to replicate this in any other template besides your own project?

Looking forward to hearing back from you, thanks!

Hi Samantha, here are all the logcats from android studio which I had running simultaneously with unreal engine.

link text
link text
link text
link text

This is for Unreal Engine Version 4.8
Phone: Galaxy S3 running android 4.3

To replicate the error:

  1. Create new First Person BluePrint Project, select mobile/tablet, with Starter Content

  2. Edit->Project Settings->Android, click Configure Now

  3. Open Couch Knights VR demo (Example Game Project under Learn)

  4. In CB of Couch Knight demo
    Content->Blueprint->Game, migrate the Game folder into the original project from step 1

  5. Switching back to original project, in world settings, set GameMode Override to FirstPersonGameMode

  6. Project Settings → Maps & Modes → set default pawn class to BP_Player_Character

  7. Delete the first person character that’s already placed in the map, add a player start

  8. Now you can launch this on the phone. No error messages show up in UE and it looks like it launched successfully, the phone screen goes black for a bit and then it just exits.

What I have tried so far: Originally when I encountered this problem, I started re-building the Couch Knight character from scratch by just adding in everything piece by piece. This seemed to work at first but as I was adding more of the original functionality to my new character, the problem came back too. So I’ve spent the last 2 days going through trial and error; adding/removing pieces, trying to pin point what exactly is causing the problem but to no avail.

This is the part of the log which always shows up whenever it crashes
Service com.android.exchange.ExchangeService has leaked ServiceConnection

Really appreciate any help I can get on this as I’ve been stuck on it for over 2 days with zero progress.

I see that you’re still on 4.8.1. Have you tried updating to 4.8.3 or trying 4.9.0 Preview 2 to see if the issue you’re running into is resolved? 4.8.1 isn’t going to have any additional updates unless they’re hotfixes, like 4.8.2 and 4.8.3.

I have tested your reproduction steps out on a Nexus 5 using the Unreal Engine 4.8.3 version. I did not receive any crash or error.

Thanks!

yeah I upgraded to 4.8.3, it didn’t change anything, highly doubt upgrading to 4.9 will change anything either

the problem has to do with the character, I’ve tried to narrow it down further than that but it’s really difficult due to inconsistent results, for example, I have to make a new level every time this crash happens because after the initial crash, sometimes it prevents other characters from working as well

inconsistent results are making this very tough to pin point without actually understanding what’s going on

I ran it just now and the phone restarted, in UE Output Log it said this,

adb:
LogPlayLevel: adb: android.os.DeadObjectException
LogPlayLevel: adb:
LogPlayLevel: adb: at android.os.BinderProxy.transact(Native Method)
LogPlayLevel: adb:
LogPlayLevel: adb: at android.app.ActivityManagerProxy.startActivityAsUser(ActivityManagerNative.java:2278)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.commands.am.Am.runStart(Am.java:617)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.commands.am.Am.onRun(Am.java:232)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.internal.os.BaseCommand.run(BaseCommand.java:47)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.commands.am.Am.main(Am.java:75)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
LogPlayLevel: adb:
LogPlayLevel: adb: at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:297)
LogPlayLevel: adb:
LogPlayLevel: adb: at dalvik.system.NativeStart.main(Native Method)

Hey Death Strike,

After reviewing the logs provided, we’ve came to the conclusion that the android.os.DeadObjectException is not coming from UE4. While the logs provide a ll of this detailed information, this error could easily be from any other program that’s running on your device. With that being said, are you launching on or packaging your project for the device? Depending on which deployment method you’re using could make a difference in result.

Thanks!

Hey Death Strike,

I have not heard from you in quite a while and for that reason, I must mark this question as resolved. However, if you have any further questions regarding this specific issue, do not hesitate in replying back as we’ll assist you further.

Thank you and have a nice day!