export ANDROID_SDK=<path to your Android Sdk like ~/home/Android/Sdk>
export ANDROID_NDK=<path to your Android Ndk like $ANDROID_SDK/ndk-bundle>
For more information see How to Compile document.
git clone https://github.com/jxcore/jxcore.git
jxcore/build_scripts/android-configure.sh $ANDROID_NDK
jxcore/build_scripts/android_compile.sh $ANDROID_NDK
By default build script (SM - static library) doesn't compile for ARM64. In order to enable it, edit build_scripts/android_compile.sh file:
replace
ARM64=0 #out_arm64_droid
to
ARM64=out_arm64_droid
For more information see Updating JXcore binaries document.
Clone jxcore-cordova repository:
git clone https://github.com/jxcore/jxcore-cordova.git
Refresh jxcore-cordova/src/android/jxcore-binaries
folder contents:
cp -f /jxcore/out_android/android/bin/* jxcore-cordova/src/android/jxcore-binaries/
Recompile .so files
(cd jxcore-cordova-master/src/android/jni; $ANDROID_NDK/ndk-build)
Get your binaries from jxcore-cordova/src/android/libs
Update makefiles:
cp Application.mk Android.mk jxcore-cordova/src/android/jni/
Then refresh jxcore binaries and recompile .so files.
adb remount
adb push jxcore-cordova-master/src/android/libs/armeabi-v7a/libjxcore.so /vendor/lib
get_jxcore_bin.sh $ANDROID_SDK
Copy build_jxcore_service.sh
to your project folder.
build_jxcore_service.sh $ANDROID_SDK $ANDROID_NDK <X.Y.Z>
<app-name>/app/src/main/assets/www/jxcore/
Android 5.0 does not have pthread_cond_timedwait_monotonic_np
This feature is implemented at `deps/uv/src/unix/thread.c'
API to get android system properties is removed in arm64 platforms
This feature is implemented at jxcore-android-scripts/deps/cares/src/android_api21.h
and included in jxcore-android-scripts/deps/cares/src/ares_init.c