https://www.iitk.ac.in/esc101/05Aug/tutorial/native1.1/implementing/index.html
http://journals.ecs.soton.ac.uk/java/tutorial/native1.1/implementing/method.html
https://www3.ntu.edu.sg/home/ehchua/programming/java/JavaNativeInterface.html
https://www.iitk.ac.in/esc101/05Aug/tutorial/native1.1/implementing/method.html
https://github.com/mkowsiak/jnicookbook/blob/master/recipes/recipeNo048/c/recipeNo048_MapOfInts.cc
https://stackoverflow.com/questions/16850204/how-to-send-a-hashmap-from-java-to-c-via-jni/16864286
https://stackoverflow.com/questions/4844022/jni-create-hashmap
https://github.com/AakashMallik/sample_cmake
https://github.com/android/ndk-samples
https://sites.google.com/a/android.com/tools/tech-docs/external-c-builds
externalNativeBuild{ cmake{
path “CMakeLists.txt”
}}
defaultConfig { externalNativeBuild { cmake { targets “target1”, “target2” arguments “-DANDROID_TOOLCHAIN=clang” cFlags “-DTEST_C_FLAG1”, “-DTEST_C_FLAG2” cppFlags “-DTEST_CPP_FLAG2”, “-DTEST_CPP_FLAG2” abiFilters “armeabi-v7a”, “armeabi” } }}
or
externalNativeBuild{ ndkBuild{
path “Android.mk”
}}
defaultConfig { externalNativeBuild { ndkBuild { targets “target1”, “target2” arguments “NDK_APPLICATION_MK:=Application.mk” cFlags “-DTEST_C_FLAG1”, “-DTEST_C_FLAG2” cppFlags “-DTEST_CPP_FLAG2”, “-DTEST_CPP_FLAG2” abiFilters “armeabi-v7a”, “armeabi” } }}
About Bundle config and installation
Default:bundleRelease gradle job
it will build the bundle and based on the languages available in the language and input setting of user the number of language is present it will take the spilt config and install in the device.
and the lib and the screen density of user phone.
in custom job of bundleRelease we give config as we want.