App crashing every two times I open it in Mali-400

Hi there.

My app is crashing every two times open it in Mali-400 devices (aka Samsung Galaxy SII).

Does someone knows why an app can be crashing every two times I open it?

I don’t do anythign special or different every time the app opens up, but the first time it works and the second time it does not works, it just crashes the second time I run it from a completely closed state, if I open it the first time it runs, then I can close it (minimize it, I don’t completely close it) and it works, but if I completely close it and then I re-open it, then it crashes, the next time I open it it works again.

Some ideas?
I’m out of ideas to fix things with Mali-400 gpu’s, they are the only devices that are not correctly working with my app, and it’s a mess because the Galaxy S2, S3, Note and Note2 are widely used devices.

Help with this please.

Cheers.

Did you find anything on this? I’m seeing a similar issue. I had supposed it is due to memory pressure, but the app only takes around 150 MB before it gets killed.

Could you post the log from the device, around the time of the crash?

Sure. Device is a Samsung Galaxy S3 running Android 4.3. Unity version is 4.6.1p4.

Memory profiler says I use 135MB RAM at the time of the crash, dumpsys meminfo backs that up.
I’ve removed most of the assets to get the RAM usage down by about 20 MB and it still occurs.

After I start loading the asset bundle, it has around 90% chance of crashing within 0-10 seconds, regardless of user input. It never crashes on the first run after “adb install -r”.

I/Unity ( 531): c__Iterator28.MoveNext: Load asset bundle: jar:file:///data/app/com.mygamecompany.mygame-1.apk!/assets/some_asset_bundle.unity3d
D/Unity ( 531): System memory in use before: 54.7 MB.
D/Unity ( 531): Unloading 3 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)
D/Unity ( 531): System memory in use after: 54.3 MB.
D/Unity ( 531):
D/Unity ( 531): Unloading 10 unused Assets to reduce memory usage. Loaded Objects now: 2615.
D/Unity ( 531): Total: 55.188999 ms (FindLiveObjects: 0.944000 ms CreateObjectMapping: 0.229000 ms MarkObjects: 52.629002 ms DeleteObjects: 0.698000 ms)
D/Unity ( 531):
D/Unity ( 531): System memory in use before: 54.4 MB.
D/Unity ( 531): Unloading 0 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)
D/Unity ( 531): System memory in use after: 75.8 MB.
D/Unity ( 531):
D/Unity ( 531): Unloading 0 unused Assets to reduce memory usage. Loaded Objects now: 2615.
D/Unity ( 531): Total: 60.820999 ms (FindLiveObjects: 1.024000 ms CreateObjectMapping: 0.259000 ms MarkObjects: 59.305000 ms DeleteObjects: 0.108000 ms)
D/Unity ( 531):
I/ProviderInstaller( 777): Insert disabled by gate ‘gms:security:enable_conscrypt_in_gms_application’
D/GCM (32392): GcmService start Intent { act=com.google.android.gms.INITIALIZE flg=0x10 pkg=com.google.android.gms cmp=com.google.android.gms/.gcm.GcmService } com.google.android.gms.INITIALIZE
I/dalvikvm( 777): Could not find method android.os.UserManager.getUserProfiles, referenced from method com.google.android.gms.wearable.service.y.a
W/dalvikvm( 777): VFY: unable to resolve virtual method 1110: Landroid/os/UserManager;.getUserProfiles ()Ljava/util/List;
D/dalvikvm( 777): VFY: replacing opcode 0x6e at 0x0035
D/AuthorizationBluetoothService(32392): Received GmsCore event: Intent { act=com.google.android.gms.INITIALIZE flg=0x10 pkg=com.google.android.gms cmp=com.google.android.gms/.auth.be.proximity.authorization.bt.AuthorizationBluetoothService$AutoStarter }.
E/AuthorizationBluetoothService(32392): Proximity feature is not enabled.
D/LocationInitializer(32460): Restart initialization of location
I/ActivityManager( 2344): Process com.google.android.gms.wearable (pid 777) (adj 5) has died.
D/SSRMv2:Monitor( 2344): SIOP:: AP = 330 (read only)
I/ActivityManager( 2344): Process com.google.android.gms (pid 32460) (adj 1) has died.
I/ActivityManager( 2344): Process com.google.process.gapps (pid 32392) (adj 1) has died.
I/ActivityManager( 2344): Kill com.google.process.location (pid 32510): provider com.google.android.gsf.settings.GoogleSettingsProvider in dying process com.google.process.gapps
D/LocationManagerService( 2344): Location listener died
I/LocationManagerService( 2344): remove 43a51cb0
D/LocationManagerService( 2344): Location listener died
D/GpsLocationProvider( 2344): GPS status listener died
D/LocationManagerService( 2344): provider request: passive ProviderRequest[ON interval=0]
I/LocationManagerService( 2344): remove 43a6e958
D/LocationManagerService( 2344): provider request: passive ProviderRequest[ON interval=0]
I/ActivityManager( 2344): Process com.google.process.location (pid 32510) (adj 1) has died.
D/SensorService( 2344): 0.1 0.2 10.0
I/ActivityManager( 2344): Process com.google.android.gsf.login (pid 471) (adj 1) has died.
I/ActivityManager( 2344): Process com.android.nfc:handover (pid 32324) (adj 1) has died.
I/ActivityManager( 2344): Process com.android.vending (pid 607) (adj 1) has died.
D/dalvikvm( 1933): GC_EXPLICIT freed 40K, 12% free 9453K/10632K, paused 60ms+2ms, total 148ms
D/dalvikvm( 1933): GC_EXPLICIT freed <1K, 12% free 9453K/10632K, paused 3ms+2ms, total 23ms
D/dalvikvm( 1933): GC_EXPLICIT freed <1K, 12% free 9453K/10632K, paused 2ms+2ms, total 22ms

… lots of MediaPlayer, MediaPlayerService, AwesomePlayer, StagefrightPlayer, OMXCodec, AudioCache

I/ActivityManager( 2344): Process com.mygamecompany.mygame (pid 531) (adj 0) has died.

Try Unity 4.6.2p1 please

Pretty much no change in 4.6.2p1. Also, I fear the reported memory leak in www (WWW has memory leak on Unity 4.6.2 Android - Unity Engine - Unity Discussions) might hurt me there, since I’m downloading a lot.

exynos (with mali) and Automatic OpenGLcausing this behavior on first run:

when we start apk again everything is ok. After clearing data in app settings it occurs again for first apk run.

When I choose OpenGl 2.0 it works even first run. If I choose openGL 3.0 every time it has issues from link above.

We have had very little luck with OpenGL ES 3.0 drivers out in the wild, we have forced all devices to use OpenGL ES 2.0, even on the ETC2 APKs where the manifest specifies ES 3.0.

Try 4.6.2p2 as some fixes it contains for Android

Same issue. I’ll try 4.6.2p2 tonight.