Tembac
February 26, 2019, 8:43pm
#1
I got an email from google about this. Support for 64-bits devices will be mandatory starting August 1, 2019.
I’m not sure if Openfl android apps already are building for 32 and 64-bits devices.
https://developer.android.com/distribute/best-practices/develop/64-bit
1 Like
Yes, we already support 64-bit on Android, but it is possible that we do not include <architecture name="arm64" />
by default on Android yet
Probably because it requires a newer NDK to support than developers might be using already
2 Likes
Looks like 64-bit x86 is not supported in the tools yet
Perhaps it would be pretty easy to add. Just run lime rebuild tools
if you make any changes
1 Like
pozirk
June 4, 2019, 2:27am
#6
Google is forcing everyone to support 64bit starting August 1, including x86_64.
I guess, it has to be added to OpenFL now.
UPDATE: I’ve tried to add x86_64 support to AndroidPlatform.hx and did lime rebuild tools
, but now getting the following error, when compiling my game:
Error: Source path “C:/HaxeToolkit/haxe/lib/lime/7,5,0/ndll/Android/liblime-x64.so” does not exist
In lib/Android folder there all the libs except this one.
Oh I thought we needed ARM64 only? Isn’t X86_64 only for desktop simulators?
pozirk
June 5, 2019, 5:10pm
#8
According to Google, not only for emulators:
I made some progress here:
…but there’s no support in the HXCPP toolchain for Android currently for X86_64:
<xml>
<!-- Android TOOLS -------------------------------------->
<!--
Configure build via variables, otherwise defaults will be used:
Set the path to the exact ndk to use with ANDROID_NDK_ROOT,
or set where all your ndks are installed with ANDROID_NDK_DIR and hxcpp will guess.
Set the version number by setting the variable:
NDKV?? - base version of ndk to use, hxcpp will find the letter, like "NDKV10" -> may end up with "10c"
TOOLCHAIN_VERSION - the compiler number, like "4.8" or "4.4.3"
PLATFORM - the android platform api level, like "android-19"
- you can also set the variable "android-19" directly
-->
<setup name="androidNdk" />
<set name="HXCPP_CPP11" value="1" if="NDKV9+ || NDKV10+" unless="HXCPP_NO_CPP11" />
<!-- Set architecture -->
This file has been truncated. show original
I think that’s the next step?
pozirk
June 5, 2019, 5:47pm
#10
If you asking me about next step, I have no idea.
Haxe/OpenFL is mostly a black box for me.
The only thing I know, starting August 1st Google Play will stop accepting updates, if they don’t support 64bit architectures.
Vega
June 5, 2019, 7:11pm
#11
pozirk:
Picture is from here , and they also write:
It is not required to support every 64-bit architecture, but for each native 32-bit architecture you support you must include the corresponding 64-bit architecture.
This sounds like ARM64 should be enough!?
Some further info about the topic here
pozirk
June 5, 2019, 7:29pm
#12
Well, I’m providing x86 already, but thanks for clarification.
Vega
June 5, 2019, 7:51pm
#13
Must have missed your post where you mentioned that, but thanks for the clarification
At least all other android devs here(if there are any!?), dont get confused(like me), thinking both 64bit versions are mandatory.
pozirk
June 5, 2019, 8:05pm
#14
Never mentioned before, but x86_64 was mandatory in my head.
Sorry for confusion!
pozirk
September 23, 2019, 11:29pm
#15
I guess, it’s related, post it here so I can find it later.
I found the solution:
The hxcpp flag for this target is wrong:
It’s written HXCPP_M64, but it’s supposed to be HXCPP_X86_64