100% possible, with a little caution ...
Most of the Android user interface runs in Java. You can create native activity , but in order to get any output on the screen, you need to either use OpenGL (which does not have all the nice Android UI Views), or you will need to switch to the JNI barrier to display your data on and from your own code to display to the user.
Depending on your experience with OpenGLES, EGL, etc. You can choose to cross the JNI barrier instead of creating native_activity, but with a much smaller cross section.
You can create a Runnable and pass it when the work is done. Use a parallel queue (in Java) to send work and another (parallel) queue to get results. Runnable issues a work queue, calls one JNI / C function to send the job and return a JSON string. Then he sends the work to the finished queue.
source share