It is never Java free outside games, because all relevant Android APIs are hidden behind JNI calls, implemented in Java.
Also NDK is designed to produce shared libraries that are then loaded into the Java host process for the application, if not manually written, one gets the generic activity (NativeActivity or GameActivity) written by the Android team, expecting specific symbols on the shared library mapping to the native method declarations.
Also NDK is designed to produce shared libraries that are then loaded into the Java host process for the application, if not manually written, one gets the generic activity (NativeActivity or GameActivity) written by the Android team, expecting specific symbols on the shared library mapping to the native method declarations.
https://developer.android.com/reference/android/app/NativeAc...
https://developer.android.com/games/agdk/game-activity
So while someone's own APK might be Java free, there will be Java on the process execution runtime.