Search Unity

  1. We are migrating the Unity Forums to Unity Discussions by the end of July. Read our announcement for more information and let us know if you have any questions.
    Dismiss Notice
  2. Dismiss Notice

Game crash when downloaded from Google Play (AAB build), worked well with offline APKs

Discussion in 'Android' started by FVS, Jul 15, 2019.

  1. FVS

    FVS

    Joined:
    Aug 10, 2015
    Posts:
    58
    - I'm building the game with Unity 2019.1.9f1
    - When I build to APK (all 3 architectures) and install to my device (Nokia 5), the game worked just fine.
    - And then I build to AAB file, update to the store.
    - Waited for a few days (the update was live after a few hours)
    - Installed the game from Google Play, crashed on the device (not even showed the splash screen, just showed a black screen for a brief second). I worked normally on BlueStack though. (all are fresh installs, verified that they were the updated version from the store).
    - The system trace show:
    java.lang.Error: FATAL EXCEPTION
    [UnityMain]
    .....
    Caused by: java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)

    Somebody please kindly give me some help.
     
  2. EchoGameworks

    EchoGameworks

    Joined:
    May 17, 2014
    Posts:
    3
    I've had a similar issue the last two days:
    - Unity 2019.1.9f1
    - Build works fine direct to my phone (Galaxy S6 Edge)
    - Upload to Google Play and download from there
    - Black screen until timeout. No Unity Logo or anything.

    I even went back and recompiled a version that I know worked on the Play Store and it black screens. Not sure if this means the download is corrupt from the Google Play Server or what. It happens on both my internal build track and the beta track.

    Hopefully someone can enlighten us on how they solved it.
     
  3. johnkarter

    johnkarter

    Joined:
    Jun 13, 2019
    Posts:
    2
    I thought I was the only one was experiencing this problem.
    I created an entire new project from scratch...uploaded the game once again...but it crashed.

    In my case, the crash happens only the first time user opens the app.

    I found an answer on stack overflow regarding this issue:
    Here's something from that answer-
    "People used to dealing with non Android App Bundle apps just transfer and share the main APK. But your App bundle app has lots of "split APKs" for things like the resources, that is how the size saving happens. If a user installs the main APK without installing the right split APKs, then a "Resources Not found" crash will occur the first time the app tries to load a resource"

    It's not the solution. But it says, that the AAB file is the problem.

    Is there any way to report this issue to google?
     
  4. EchoGameworks

    EchoGameworks

    Joined:
    May 17, 2014
    Posts:
    3
    So I figured mine out. However, it seems like it is most likely a different problem then what you guys are experiencing.

    My story was:
    1) Everything worked fine on the internal release track for about 15 builds in a row
    2) Got Google Play Beta approval
    3) Downloaded the game on the Beta build
    4) Black screen as mentioned above
    5) The same Beta build still worked on other people's phones

    The main problem was that somehow the Google Play cache must have gotten either a duplicate entry for the game or some other data glitch. Therefore, when I tried to open as a direct from Unity build (without uploading to Google Play), it worked fine because Google Play wasn't handling the registration of it. I have a feeling the game was trying to read part of one build and part of another or something similar.

    The fix was:
    1) Uninstall your game
    2) Go to your phones Settings -> Apps
    3) Go to Google Play Store and tap the Force Stop button
    4) Go to the Storage screen (by clicking on the Storage line item under Force Stop) and tap the Clear Data button - this will also active the Clear Cache button. If it doesn't, clear the cache too.
    5) Follow steps 3 and 4 for the Google Play services App
    6) Restart your phone (this part was necessary - I tried it without doing this and the fix didn't initially work)
    7) Redownload your game from Google Play
    8) It should start up normally.

    Hopefully this helps someone else. I spent 20+ hours and 4 days ripping my game down to the bones and it wasn't really even a Unity problem...
     
  5. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
  6. ODINKONG

    ODINKONG

    Joined:
    Nov 4, 2014
    Posts:
    112
    Wow you are a life saver this fixed it for me. Thank you.
     
  7. FVS

    FVS

    Joined:
    Aug 10, 2015
    Posts:
    58
    Thank you, @ainscough , very much!
    Hope this only happens in the dev's phone because we have all the versions messed up, but everything worked fine for our beloved users.
     
  8. EchoGameworks

    EchoGameworks

    Joined:
    May 17, 2014
    Posts:
    3
    Glad it solved your guys' problem, too!, Yea, @FVS I'm pretty sure it's because of the versioning issue on the dev phones only.
     
    FVS likes this.
  9. porandojin1

    porandojin1

    Joined:
    Aug 5, 2017
    Posts:
    7
    Helped me too. Thank you so much for sharing this.
     
  10. o1o101

    o1o101

    Joined:
    Jan 19, 2014
    Posts:
    639
    This fixed it for me, cheers!
     
  11. ashishkushwaha

    ashishkushwaha

    Joined:
    May 12, 2015
    Posts:
    35
    Code (CSharp):
    1. java.lang.Error: FATAL EXCEPTION [UnityMain]
    2. Unity version     : 2019.1.0f2
    3. Device model      : Xiaomi Redmi Note 6 Pro
    4. Device fingerprint: xiaomi/tulip/tulip:9/PKQ1.180904.001/V11.0.2.0.PEKMIXM:user/release-keys
    5.  
    6. Caused by: java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0000007d40686ff0
    7. Build fingerprint: 'xiaomi/tulip/tulip:9/PKQ1.180904.001/V11.0.2.0.PEKMIXM:user/release-keys'
    8. Revision: '0'
    9. pid: 20642, tid: 20680, name: UnityMain  >>> com.Gametrigger.ZombieShooterDeadTerror <<<
    10.     x0   0000007d5c6f8a88  x1   0000007d5c88fc00  x2   0000007d4d051628  x3   0000000000000010
    11.     x4   0000000000000000  x5   0000007d40687078  x6   0000000000000000  x7   0000000000000000
    12.     x8   0000007d4d051600  x9   00000000ffffffff  x10  0000000000000001  x11  0000000000000015
    13.     x12  0000000000000590  x13  000000000000000d  x14  aaaaaaaaaaaaaaab  x15  aaaaaaaaaaaaaaab
    14.     x16  0000007ddec68bc8  x17  0000007ddebe9b14  x18  0000000000000000  x19  0000007d4d051628
    15.     x20  0000007d40687078  x21  0000007d5c6f8a88  x22  0000000000000200  x23  0000007d4d051400
    16.     x24  0000000000000010  x25  0000007d4d051628  x26  0000007d4078a588  x27  0000007d3c7b45f4
    17.     x28  0000007d3dc33000  x29  0000007d40687060  x30  0000007ddec1a82c
    18.     sp   0000007d40686fe0  pc   0000007ddebf0420  pstate 0000000080000000
    19.  
    20.     at [vdso].(:0)
    21.     at libc.je_arena_tcache_fill_small(je_arena_tcache_fill_small:0)
    22.     at libc.je_calloc(je_calloc:764)
    23.     at libil2cpp.(:0)
    24.     at libil2cpp.(:0)
    25.     at libil2cpp.(:0)
    26.     at libil2cpp.(:0)
    27.     at libil2cpp.(:0)
    28.     at libil2cpp.(:0)
    29.     at libil2cpp.(:0)
    30.     at libil2cpp.(:0)
    31.     at libil2cpp.(:0)
    32.     at libil2cpp.(:0)
    33.     at libil2cpp.(:0)
    34.     at libil2cpp.(:0)
    35.     at libil2cpp.(:0)
    36.     at libil2cpp.(:0)
    37.     at libil2cpp.(:0)
    38.     at libil2cpp.(:0)
    39.     at libil2cpp.(:0)
    40.     at libil2cpp.(:0)
    41.     at libil2cpp.(:0)
    42.     at libil2cpp.(:0)
    43.     at libil2cpp.(:0)
    44.     at libil2cpp.(:0)
    45.     at libil2cpp.(:0)
    46.     at libil2cpp.(:0)
    47.     at libil2cpp.(:0)
    48.     at libil2cpp.(:0)
    49.     at libil2cpp.(:0)
    50.     at libil2cpp.(:0)
    51.     at libil2cpp.(:0)
    its not working for me :( mine was not working before uploading in google Play store
    and one more thing i would like to share, i create build again but this time for testing purpose i am not spiting large size Apk, so result is same apk is keep crashing with above message,
    this time i did't uninstall it , o try to install same apk over existing install APK phone take it as update after that it get install and running too , what could be the reason because it will not work with PlayStore
    :( means it will not run in new user phone

    i think i did some come fix may be help . i changed scripting backend to " mono" it makes target architecture "arm64" disable , after making test built without splitting its working in first install , uploading it in play store i hope it will work

    so google is not uploading Asking " ARM 64 " so whole scene is ARM 64. so i am still searching how to fixed this !
     
    Last edited: May 31, 2020
    L0tan likes this.
  12. nhanc18

    nhanc18

    Joined:
    Jul 29, 2019
    Posts:
    12
    Thanks bro.
     
  13. powereborn

    powereborn

    Joined:
    Dec 22, 2018
    Posts:
    5
    From what I saw,

    That works most time :D

    There can be another issue not related to play store, also if you enable ARM64 and ARM7 whereas you were using only ARM7. An easy trick is to delete directories Library/il2cpp* because the architecture change can be impactful.

    Remember play store currently asks AAB with Unity being configured with Player settings:
    - Scripting backend to IL2CPP
    - ARM7 + ARM64
    - Publishing settings: Keystore well generated and in your play.google.com, choose to google to handle for you the generation of keys automatically

    With those 2 solutions, it seems to cover pretty much 90% of pushing an app to play store. Unity should definitely add more documentation on this :)
     
    yuliyF and vhnsdev like this.
  14. vhnsdev

    vhnsdev

    Joined:
    Aug 8, 2017
    Posts:
    1
  15. fabbrius

    fabbrius

    Joined:
    May 22, 2020
    Posts:
    3
    Hello everyone. I am writing about a similar problem I am having with an augmented reality app.

    We are using Unity 2020.3.23f1 and AR Foundation v.4.17 (AR Core and AR Kit also v. 4.17).

    The problem seems to be related to the build format: when we export to APK the app works and there is no there are problems with augmented reality. Whereas if we export to AAB to put it on the Google store the app freezes when the the augmented reality features are activated: the camera view is not displayed, the screen goes black and the app freezes preventing the user from being able to move forward, then crashes.

    I tried the solution proposed by @EchoGameworks, but unfortunately it did not work. When I download the app from the store again, even after performing the described procedure it still crashes.

    I have read about problems related to AR with the AAB file when the Split Application Binary option is enabled. But this is not our case: this option is not enabled.

    https://github.com/Unity-Technologies/arfoundation-samples/issues/941

    Also I read that someone proposes a solution by deleting some files from the Library folder of the project Unity when we go to build in AAB after changing the target architectures (arm64 and armv7, we enabled both)

    https://forum.unity.com/threads/and...-and-armv7-architecture.1113217/#post-7493641

    Unfortunately, this solution doesn't work either.

    This situation is frustrating as the APK works perfectly but we cannot put the app on the Google Store because this I accept now only AAB.

    Has anyone experienced something similar? Do you have any solution to propose?

    Thanks for your help
     
  16. tencho_unity

    tencho_unity

    Joined:
    Jun 11, 2018
    Posts:
    2
    Is anyone else still having this problem?

    I have solved the problem by disabling Automatic Integrity Protection.
     
  17. tencho_unity

    tencho_unity

    Joined:
    Jun 11, 2018
    Posts:
    2
    I have received a notification from Google that they have fixed the problem with Automatic Integrity Protection.
    If you are still having problems, creating a new release will fix this issue.