如何使用NativeActivity写入内部存储文件系统?

Jul*_*rgé 3 filesystems android android-ndk android-3.0-honeycomb native-activity

我正在将纯C++游戏移植到Android上,由于我的目标是Android 3.0+平板电脑,我选择使用NativeActivity来完全避免使用Java.但是,我无法看到任何允许我写入设备内部存储的功能.对fopen()的调用将失败,因为我不知道我应该写哪个目录并且内部存储文件系统不可访问

这段代码通常可以解决Java问题,为我提供了应用程序内部可写数据目录的路径:

mContext.getFilesDir();
Run Code Online (Sandbox Code Playgroud)

有人知道C++的替代品吗?否则我将不得不用JNI调用上面的代码片段.

当然,我已经查看了$ NDK /..../ include/android / headers但是我看不到我需要的候选方法.

Jul*_*rgé 9

我终于找到了.原来,内部存储目录的路径被声明为android/native_activity.h中的ANativeActivity的成员:

/**
 * Path to this application's internal data directory.
 */
const char* internalDataPath;
Run Code Online (Sandbox Code Playgroud)