Search Unity

Bundle with ARM64 still gets error in Google Play Console

Discussion in 'Android' started by DenisK_WRG, Aug 8, 2019.

  1. DenisK_WRG

    DenisK_WRG

    Joined:
    Oct 16, 2018
    Posts:
    14
    Hi! I made all necessary steps to build bundle with both ARMv7 and ARM64 versions and no errors during compilation. But after uploading to Google Play Console I can't publish this version because getting message:

    Error
    This release is not compliant with the Google Play 64-bit requirement
    The following APKs or App Bundles are available to 64-bit devices, but they only have 32-bit native code: 32.


    What can I do to make game available to publish? Early it was not a problem but from August it's required bu Google.

    Unity 2019.1.11f1 Windows
     
  2. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,900
    Just to be sure did you try to unzip app bundle and see if there are really ARM64 libraries there?
     
  3. DenisK_WRG

    DenisK_WRG

    Joined:
    Oct 16, 2018
    Posts:
    14
    Hmm, actually it has only `\base\lib\armeabi-v7a`, no `arm64-v8a`. But why it happens? Unity projects settings Target Architecture selected ARMv7 and ARM64. Is it Unity problem?
     
  4. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,900
    Maybe you have selected Mono as scripting backend, there's no ARM64 support for Mono.

    You need to select il2cpp.

    If that's not the case, please report a bug with repro project attached
     
  5. DenisK_WRG

    DenisK_WRG

    Joined:
    Oct 16, 2018
    Posts:
    14
    No, it's IL2CPP for sure (not sure if it possible to select ARM64 without it).
     
  6. DenisK_WRG

    DenisK_WRG

    Joined:
    Oct 16, 2018
    Posts:
    14
    Find out the problem. It was in mainTemplate.gradle and caused by Android Resolver

    // Android Resolver Exclusions Start
    android {
    packagingOptions {
    exclude ('/lib/arm64-v8a/*' + '*')
    exclude ('/lib/armeabi/*' + '*')
    exclude ('/lib/mips/*' + '*')
    exclude ('/lib/mips64/*' + '*')
    exclude ('/lib/x86/*' + '*')
    exclude ('/lib/x86_64/*' + '*')
    }
    }
     
  7. MechEthan

    MechEthan

    Joined:
    Mar 23, 2016
    Posts:
    166
    If you have loose binary plugins, make sure Unity's CPU target is set correctly,

    e.g.
    upload_2019-8-9_10-12-40.png
     
  8. jessiedaniel7

    jessiedaniel7

    Joined:
    Aug 20, 2019
    Posts:
    5
    DenisK_WRG, i had the same problem, how did you solve it, where can you find this file?

    Apparently upon checking the .aab file, my app had arm64-v8a
     
    Last edited: Aug 20, 2019
  9. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    I believe you need to Uncheck the x86 option.
     
  10. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    I am facing now a pretty same problem, but with an APK, not App Bundle. And, yes, it points me to a x86 build when I'm doing "split APK by a target architecture". When I'm doing a fat build, it only works with ARMv7+ARM64 (not with x86).

    Another great solution by Unity (as with a Google ad ID)! Just do not build your game to support x86 devices, whatever... GG!
     
    Last edited: Aug 20, 2019
  11. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    Sorry I don't quite follow. Google is deprecating 32-bit support and it's my understanding that 32-bit devices make up less than .4% of the Android market. There are many threads on this issue, some are hinting that this might be a problem on the Google developer console.
     
    Last edited: Aug 20, 2019
  12. MechEthan

    MechEthan

    Joined:
    Mar 23, 2016
    Posts:
    166
    Android x86 had < 2% market share on Unity back in 2017. I somehow doubt that's grown since then.
    https://android.stackexchange.com/q...e-of-android-devices-runs-on-x86-architecture
     
  13. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    Can we take a look at this statistics?
     
  14. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    Agreed, I would be interested myself. I've heard it's quite low as mentioned on the other posts here.
     
  15. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    That's what I've got from Google:
     
  16. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,735
    Can we get this advice pinned on this forum? There have been a lot of threads about this.
     
  17. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    Well, actually maybe a better solution would be to add a support for x86_64 libraries by Unity.
     
  18. kaarloew

    kaarloew

    Joined:
    Nov 1, 2018
    Posts:
    360
    I don't see any use for x64 Android plugins. Market share of Intel's x64 devices in Android ecosystem is so low it doesn't even register in most analytics systems.
     
  19. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    Well I won't be so sure that x86 devices have so inconsiderable market share...
     
  20. MechEthan

    MechEthan

    Joined:
    Mar 23, 2016
    Posts:
    166
    It's low enough that Unity is dropping it entirely in Unity 2019....

    From: https://blogs.unity3d.com/2019/03/0...bit-and-app-bundles-backported-to-2017-4-lts/

    (Although continued "support" in Unity 2018 is pretty pointless without x86_64.)