Android Question List of 64-bit librarys for b4a

renemo

Member
Licensed User
Hello

In case of Google 64-bit recomendation for apps since August 2019. Where can i get list of libs with correct 64-bit nature for b4a ? For example - LibGDX is 64-bit library ?
 

Syd Wright

Well-Known Member
Licensed User
I fully support your question. Yesterday Google sent me a list showing that about 15 of my apps are not compliant with 64-bit. No idea where or how to start determining which of the many libraries that I use in my apps is/are causing this.
 

Syd Wright

Well-Known Member
Licensed User
Only libraries with native binaries can be non-64 bit compliant. There are very few libraries with native binaries.
The most common one is SQLCipher. The latest version of SQLCipher includes a 64 bit binary.

I'm not sure about libgdx. You can check it with the instructions given in the above post.
I suggest that a new thread is created where all non-64 bit compliant libraries are listed, plus links where newer compliant libraries can be found (and that this thread is not closed after 30 days, such that library titles can constantly be added). As it stands now, many forum members (like me) are searching individually to find the culprit libraries.

I doesn't seem that mainly ".so" files are the source of the problem. Most of my (15) apps that Google has listed as being non-64 bit do not use .so files.

Furthermore, some more information would be welcome how to determine whether a ".so" file is 32 or 64 bits.

Isn't it possible to add a feature to the B4A IDE by which a list of used 32 bit libraries can be composed (for example by marking 32-bit libraries with a * in the libraries list?)
 
Last edited:

Erel

Administrator
Staff member
Licensed User

Syd Wright

Well-Known Member
Licensed User
To start the list of non-compliant 64-bit libraries that I suggested above, I suspect:
1. AACdecoder (which I still use because Exoplayer cannot show the song titles while listening to radio streams)
Ref: https://www.b4x.com/android/forum/threads/aacdecoder-android-0-8-jar.75364/#post-478498

2. Vitamio-5 library (It doesn't show any 64-bit platforms in the "libs" folder, after unzipping the jar file as recommended by Moster67).
Ref: https://www.b4x.com/android/forum/threads/vitamio-5-version-5-2-3.65176/#content

Also I am not sure about the ABZip and other AB.. libraries.
 
Last edited:

wonder

Expert
Licensed User
Only libraries with native binaries can be non-64 bit compliant. There are very few libraries with native binaries.
The most common one is SQLCipher. The latest version of SQLCipher includes a 64 bit binary.

I'm not sure about libgdx. You can check it with the instructions given in the above post.
LibGDX is 64bit compatible (thanks @Informatix).
 

moster67

Expert
Licensed User
Thank you. AACdecoder and Vitamio-5 are 32-bit only, according to this method. I invite other forum members to expand this list.
I am not at home now but Vitamio5 should be 64bit compliant. Decompress the jar and there should be a 64bit folder. Make sure to use the latest version I have sent to all donators.
 

Syd Wright

Well-Known Member
Licensed User
I am not at home now but Vitamio5 should be 64bit compliant. Decompress the jar and there should be a 64bit folder. Make sure to use the latest version I have sent to all donators.
Unless I am mistaken, in the "lib" folder of this jar (Vitamio 5.12) are only 2 folders: "x86" and "armeabi-v7a". According to this link, "armeabi-v7a" is 32-bit only:
https://stackoverflow.com/questions/54482989/android-64-bits-compatibility-and-armeabi
It says that: "The 64-bit ABIs are arm64-v8a and x86_64".
 

moster67

Expert
Licensed User

Syd Wright

Well-Known Member
Licensed User
Check again with latest library which you have already received. Latest version of Vitamio is 5.2.3
OK, then I am using the wrong Vitamio version. The cause of the confusion is the version numbering. To me 5.12... is higher than 5.2... (It doesn't say 5.1.2 in the B4a libraries list, but 5.12).

PS: I now see that you have also changed the lib name from Vitamio5.jar to Vitamio5_23.jar which indeed contains the "arm64-v8a" platform. My mistake.
 
Last edited:
Top