将预生成的文件存储在Android设备上并使用JNI访问它们

时间:2014-07-22 12:58:44

标签: android android-ndk java-native-interface

我有4个文件要放在/ db目录下,并使用JNI函数访问这些文件。我不想以编程方式创建文件和文件夹,我已经有4个二进制文件,我想从JNI代码读取/写入。我的问题是,如何将这些预先生成的文件存储在设备上(可能在应用程序目录中),然后使用它们的路径访问它们?

    jint Java_com_example_nativeexample_MainActivity_getData(JNIEnv* env, jobject javaThis) {

    jint error_code = SUCCESS;

    error_code = readData([directory]+"db/file1.indx", [directory]+"db/file2.dat");

    return error_code;
}

1 个答案:

答案 0 :(得分:0)

将它们存储在应用的私人文件区域中。您可以从Context.getFilesDir()获取文件名。您可以向下传递Context对象并从JNI进行调用,也可以在初始化期间将路径名传递给JNI代码。