来自NDK的GetFilesDir()?

时间:2011-06-08 09:49:16

标签: android android-ndk

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

我已注意到其他帖子如下: Android NDK Write File

提到这个目录的'通常'位置是什么。但是要使它在所有版本和所有设备中都是正确的,肯定需要等效的系统调用。

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

感谢您的时间。

2 个答案:

答案 0 :(得分:7)

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

  1. 阅读 / proc / self / cmdline / proc / MyPID / cmdline
  2. 将#1的结果附加到/ data / data /
  3. 示例结果:
    /data/data/com.yourcompany.yourproduct /

答案 1 :(得分:5)

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