来自NDK的GetFilesDir()?

DJP*_*JPJ 11 android android-ndk

有没有办法让应用程序的目录直接从NDK将私有数据保存到我的应用程序的文件中?换句话说,我需要一个等效的Java函数mContext.getFilesDir().

我已经注意到其他帖子,比如这个: Android NDK写文件

提一下这个目录的"通常"位置是什么.但是要使它在所有版本和所有设备中都是正确的,必须进行等效的系统调用.

我目前正在使用NativeActivity,而根本没有Java.

感谢您的时间.

NuS*_*ler 8

我有自定义帮助程序类用于访问各种路径,对于数据目录我这样做:

  1. / proc/self/cmdline/ proc/MyPID/cmdline
  2. 将#1的结果附加到/ data/data /

示例结果:/
data/data/com.yourcompany.yourproduct /

  • 对于那些想知道如何获取`MyPID`的人,你可以简单地用"self"替换它,即读取`/ proc/self/cmdline`,这将为你节省一些额外的麻烦. (2认同)

jim*_*rry 5

如果您使用的是NativeActivity,则可以从本机代码访问具有internalDataPath和externalDataPath成员的ANativeActivity实例(请参阅/platforms/android-9/arch-arm/usr/include/android/native_activity.h).