为什么我们不能从/ raw或/ assets读取sqlite文件?

时间:2012-06-16 23:11:52

标签: android

我有一个我想用我的应用程序分发的sqlite数据库。大约3mb。如果我理解正确,如果它位于我的应用程序的/ raw或/ assets文件夹中,我无法直接打开它,对吧?我们需要先将其直接复制出来,如下所示:

Get the SQLite path within the Assets Folder

所以我的应用程序将消耗两倍于通常的磁盘空间?我不明白为什么有必要将数据库文件放在特定的文件夹中?

由于

1 个答案:

答案 0 :(得分:3)

  

所以我的应用程序会消耗两倍的磁盘空间吗?

是。从技术上讲,可能更多,因为您的数据库是在APK文件中压缩的。

  

我不明白为什么有必要将数据库文件放在特定文件夹中?

数据库文件不必位于特定文件夹中。但是,assets/是开发计算机上的文件夹;它是设备上APK文件的一部分。 res/raw/中的所有内容都是如此。

顺便说一句,我推荐SQLiteAssetHelper for copying the database out of assets/