这是我的问题的描述:
我想做什么:
我有一个应用程序,我想创建一个常见的 cpp 抽象到一个StorageManager类,它将为我的IOS应用程序和我的Android处理保存和加载文件。
为了做到这一点,我需要保存cpp。
中的文件我想要的是什么:
我想要一些NDK api来保存文件 例如,有一个用于记录的API:
#include <android/log.h>
__android_log_print(Tag, Msg);
我想要类似的东西:
NativeStorageManager__save_file_to_internal_storage(File file, string fileName);
问题:
根据我在本文档中的内容:http://mobilepearls.com/labs/native-android-api/#assets 我没有看到这么简单的API。
我唯一看到的是从NativeActivity获取内部存储路径:
nativeActivity->internalDataPath;
但我没有NativeActivity ...... 也不是获得NativeActivity的主要功能:
void android_main(struct android_app* state)
所以我的问题是:
我是否正确且没有此类API?
我唯一的选择是使用JNI调用Java以检索内部存储的路径,然后将文件从cpp代码保存到此路径中吗?
您认为2是合理的解决方案吗?
我在Java API中看到有一些保存文件的选项: Context.MODE_PRIVATE Context.MODE_WORLD_WRITEABLE 等...
自: http://developer.android.com/guide/topics/data/data-storage.html#pref &#34;默认情况下,保存到内部存储的文件对您的应用程序是私有的,而其他应用程序无法访问它们(用户也无法访问)&#34;
当我使用以下命令在cpp中保存文件时
std::fopen(fileNameAndPath, "w+");
默认情况下会将它保存在Context.MODE_PRIVATE中吗?
任何帮助将不胜感激! 感谢