使用NDK访问android的文件系统,大部分方式是使用jni回调java的代码以后来操作。可是如果是使用了NativeActivity应该怎么办,按照官方的例子,是没有自己写的一行java代码的又如何去jni,如果用了jni也破坏了NativeActivity的意义。
阅读NDK提供的头文件会发现头文件:
#include <android_native_app_glue.h>
// The ANativeActivity object instance that this app is running in
ANativeActivity* activity;
这里我们就能拿到系统提供的NativeActivity。继续打开ANativeActivity所在文件,就看找到成员变量:
/**
* Pointer to the Asset Manager instance for the application. The application
* uses this to access binary assets bundled inside its own .apk file.
*/
AAssetManager* assetManager;