如何通过NDK访问Android Lollipop DocumentFile文件?

时间:2015-06-02 10:49:57

标签: android android-ndk android-5.0-lollipop

如何在Native JNI Code中访问Android KitKat / Lollipop中DocumentFile生成的文件,这样我就可以使用fopen,fread等。 我特别要求它通过NDK访问外部SD卡文件。

1 个答案:

答案 0 :(得分:9)

您可以使用文件描述符:

ParcelFileDescriptor filePfd;
DocumentFile file;
filePfd = getContentResolver().openFileDescriptor(file.getUri(), "w");
int fd = filePfd.getFd();

这个int fd可以传递给JNI并用作通常的C ++文件描述符:

FILE* file = NULL;
file = fdopen(fd, "r+b");

您需要获得访问SD卡上文件或目录的权限

相关问题