Hello lost_bits,
I had a similar problem with a native_glue application. It seems that
the DalvikVM keeps processes alive as long as possible, to save them
for 'later use'... Here is my post which also contains some reactions
with some more detailed explanations.
http://groups.google.com/group/android-ndk/browse_thread/thread/70efce58bca9c60f
Probably, even after you sucessfully close your native-application,
the instance of NativeApp is kept alive saving the struct *app
variable.
I think, the most stable workaround for this problem would be, instead
of running your application trough NativeActivity, you should use
System.loadLibrary("yourlibrary"); and call the functions of your
native application from java, using 'Public native' function calls.
This way, everytime you return from a function call, your program will
jump back to the scope of the top level java application, without
having the need of your NativeApplication being completely shut down,
freed and destroyed.
I haven't found a way to force complete shutdown of the application,
so I decided it would be better to change the flow of my program so I
woudn't be dependend of this shutdown anymore.
Good luck.