我正在启动一个示例Android应用程序,我需要的一件事是在安装时与应用程序一起存储的两个文件。在运行时,应用程序应该能够读取和写入这些文件。
这似乎不是一项任务,但我已经阅读了各种说明(包括developer.android.com,O'Reilly学习Android和一些类似的问题)并且从未得到最终的线索导致回答我的问题。
这些文件足够小(100kb),允许安装.apk文件,据我所知,这个文件存储在data / data / packagename中。为了在安装过程中将文件放在那里,我发现简单的解决方案是将文件添加到Eclipse项目中的res / raw文件夹中。我这样做但是当我使用模拟器和DDMS测试应用程序时无法找到文件。
我确信我错过了一个重要的教程或信息,如果是这样的话,请将它直接敲打到我脸上。否则,我很感激您提供的任何帮助。
答案 0 :(得分:1)
将预构建文件放在应用程序的/asset
目录中。
首次运行应用程序时,将这些文件复制到/data/data/<application_package>/files
目录,
现在对内部存储位置的这些文件执行write
和read
操作。
注意:强>
请确保不允许对/asset
或/res/raw
目录中的文件执行写操作(因为它们是只读文件系统)。
此外,如果您的文件位于/res/raw
目录,
您可以使用输入流来获取这些文件,例如
InputStream ins = getResources().openRawResource(R.raw.file);
答案 1 :(得分:0)
试试this tutorial。它显示了如何从InputStream
文件夹中存储的任何文件中获取raw
。
答案 2 :(得分:0)
有关读取原始资源的示例,请参阅Resources.openRawResource() issue Android。 openRawResource为您提供了一个读取数据的InputStream。