androidarchitecture64-bit

Android app, How to support 64-bit architectures?


Last time when I was releasing a new version of my app on Play Store, It showed this warning : This release is complaint with the Google Play 64-bit requirement.

According to the Android Developer website : Support 64-bit architectures

Look for native libraries using APK Analyzer

  1. Open Android Studio, and open any project.

  2. From the menu, select Build > Analyze APK…

  3. launch APK analyzer

  4. Choose the APK you wish to evaluate.

  5. Look within the lib folder, which is where you will find any '.so' files. If you can not find any '.so' files in your app at all, then your app is already ready and no further action is required. If you see armeabi-v7a or x86, then you have 32-bit libraries.

All the code of the app is written in Java, But I am using some libraries.

The problem is that I don't see the lib folder, After following the above steps. The folders that I see


Solution

  • Probably one (or more) of your libraries include a native binaries, but they don't support the 64-bit architecture. You can check this by taking your apk file, and unzipping it (you can rename to .zip and then unzip for example).

    In the zip, open the lib directory, and check it's contents. The 64-bit versions should be in the arm64-v8a and in the x86_64 directories. As far as I know, Android only looks for the ARM one, and displays a warning if that one is missing. You can usually find out which dependency includes those files, from the native file names inside the other directories in lib. Usually updating that library to its latest version should be enough, otherwise you might have to look into alternatives.