Time for action – calling back Java from native code
Let's continue our Store
by calling back the interface we defined from native code:
- In
com_packtpub_store_Store.cpp
, declare method descriptors with typejmethodID
for each callback, which is going to be cached:... static Store gStore; static jclass StringClass; static jclass ColorClass; static jmethodID MethodOnSuccessInt; static jmethodID MethodOnSuccessString; static jmethodID MethodOnSuccessColor; ...
- Then, cache all the callback descriptors in
JNI_OnLoad()
. This can be done in two main steps:Getting a Class descriptor with the JNI method
FindClass()
. One can find a class descriptor, thanks to its absolute package path, here:com./packtpub/store/Store
.Retrieving a method descriptor from the ...
Get Android NDK Beginner's Guide - Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.