Yeah I used only SFML with a Custom Activity to implement the functions (add/hideAds in java). You have to change a few things in the manifest, sadly I do not remember what excatly (the default start activity, change it from nativeactivity to your custom activity)
The hack to get access to the NativeActivity is easy but ugly
3 simple steps:
1) Copy these files from the SFML src directory to your project:
Activity.hpp EGLCheck.hpp EGLContext.hpp GlContext.hpp. Because you will have to include Activity.hpp (which includes the other ones, you will have to change the #include inside these files).
2) You need to get the SFML states (include Activity.hpp) to retrieve the NativeActivity: see here:
https://github.com/AlexAUT/AwEngine/blob/master/include/aw/utility/systemValues.cpp#L303) Use the exposed NativeActivity, for JNI (get the JavaEnviroment, or get the InternalPath in my like a few lines above).
(Keep in mind you should lock the sates when you use it, to prevent race conditions with the event thread of SFML)
And from there on you can just follow the tutorial on the site linked above
AlexAUT