Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 内存路径上的fopen返回EISDIR,但不存在任何内容_Android_Android Ndk - Fatal编程技术网

Android 内存路径上的fopen返回EISDIR,但不存在任何内容

Android 内存路径上的fopen返回EISDIR,但不存在任何内容,android,android-ndk,Android,Android Ndk,我正在尝试使用ndk将文件写入/data/data/com.package/files/ 我使用“/proc/PID/cmdline”获取应用程序的正确路径。这条路是正确的 在java中,我称为GetFileDir,因此创建了文件路径 Log.d("MAIN", "Files dir: "+getFilesDir().toString()); 我的设备已根植,我可以窥探路径: # ls -la /data/data/com.package drwxrwx--x app_149 app_149

我正在尝试使用ndk将文件写入/data/data/com.package/files/

我使用“/proc/PID/cmdline”获取应用程序的正确路径。这条路是正确的

在java中,我称为GetFileDir,因此创建了文件路径

Log.d("MAIN", "Files dir: "+getFilesDir().toString());
我的设备已根植,我可以窥探路径:

# ls -la /data/data/com.package
drwxrwx--x app_149  app_149           2013-04-26 16:33 cache
drwxrwx--x app_149  app_149           2013-04-26 17:06 files
drwxr-xr-x system   system            2013-04-26 18:26 lib
文件目录为空。 当我尝试使用fopen在文件目录中创建文件时,使用EISDIR失败:

FILE *fp= NULL;
fp= fopen("/data/data/com.package/files/test.txt","w"); // FAILS with errno 21 (EISDIR)
EISDIR应该说指向的文件是一个目录,但目录中没有文件

# ls -la /data/data/com.package/files
#

这是什么?

根权限不适用于Dalvik机器,也不适用于从Dalvik机器启动的本机线程。您可能需要创建一个本地linux可执行文件,并从Android应用程序中“shell”到它。