The following APKs or App Bundles are available to 64-bit devices, but they only have 32-bit native code: 5

I had my first version of the app in v21. Now, after many days of upgrading v21 to v36, I tried building it and uploading it in the Google Play Console. But when I tried uploading the app bundles/apk (I have tried both apk and app bundle) it provides me with an error as shown below. Can anyone please help me figure this out. Since, I am already late to publish my app so I want to fix this asap.

expo diagnostics:
Expo CLI 3.11.3 environment info:
System:
OS: macOS 10.15.2
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 10.16.0 - /usr/local/bin/node
Yarn: 1.21.1 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
IDEs:
Xcode: 11.3/11C29 - /usr/bin/xcodebuild
npmPackages:
expo: ^36.0.0 => 36.0.2
react: 16.9.0 => 16.9.0
react-native: https://github.com/expo/react-native/archive/sdk-36.0.1.tar.gz => 0.61.4
react-navigation: 1.0.0-beta.11 => 1.0.0-beta.11
npmGlobalPackages:
expo-cli: 3.11.3

Hi

Take the latest APK and unzip it in a temporary directory (rename it to .zip before hand if your unzip program doesn’t want to unzip it).

You’ll find a file called assets/shell-app-manifest.json.

Search for sdkVersion in that file. e.g. for one of my apps it looks like this:

...
tforms":["ios","android","web"],"privacy":"unlisted","sdkVersion":"35.0.0","slug
...

Does it say “36.0.0” for your app?

Then run ls lib in the unzipped APK. You should see something this:

$ ls lib/
arm64-v8a	armeabi-v7a	x86		x86_64

The above shows that there is 32 bit and 64 bit code for both ARM and x86.

I don’t have an App Bundle handy, but an App Bundle is also just a ZIP file and I’m pretty sure it will also have at least the shell-app-manifest.json and probably also files/directories for the 32 bit and 64 bit native code.

If you don’t see "sdkVersion":"36.0.0" or the 64 bit code is missing then either you have the wrong APK/App Bundle or somehow the build service has built the wrong version of your app or used the wrong app.json. I’m not sure how this could happen, but if so you might try clearing caches etc. like this before building again:

I just looked into the app bundle and found out the sdkVersion is mentioned as 36.0.0 and there are all the four libraries inside the lib folder as well. I am really not sure what’s wrong with the build.

OK, that’s weird. And how are you uploading the APK or app bundle?

I am just dragging and dropping my apk/app bundle file to the Google Play Console on chrome.

I think the problem might be that the old APK is still available as part of your release.

In the following documentation under Step 2 there is a section about APKs/App Bundles to deactivate. I think you might need to make sure the previous version(s) of your app are deactivated:

https://support.google.com/googleplay/android-developer/answer/7159011?hl=en#apks_to_deactivate

The following might also be useful:

https://support.google.com/googleplay/android-developer/answer/113476?hl=en

Yes you are right. I was retaining the previous apk so I was getting the error. Once I deactivated the apk it fixed the issue. Thanks for your help!

1 Like

No problem! I learnt something too while investigating this :slight_smile: