如何使用Lollipop从外部存储读取SQLite数据库

时间:2015-04-20 16:30:24

标签: android sqlite android-5.0-lollipop

我的应用程序基于存储在大型sqlite文件中的大量数据。 (500MB)。此数据库在首次启动时从服务器下载,永远不会再次更改。 (仅读取Access)。一切都已经有效,但是自KITKAT以来,数据存储在内部SD卡上。现在有了Lollipop,我们有了将数据存储到外部SD卡的新功能。有了这个新功能,我就遇到了问题。

用例 - 用户第一次启动应用程序

  • 将通过新推出的ACTION_OPEN_DOCUMENT_TREE
  • 询问用户应在哪个文件夹中存储数据
  • 应用程序下载数据库并将其存储到文件夹
  • 该应用程序显示数据。
  • 用户退出应用
  • 用户再次启动应用程序。

现在。如何检测用户首次启动时选择的文件夹?我不想再次显示Tree Dialog。 (我是否必须自己在偏好中存储任何路径?)

如何访问该文件夹中下载的数据库?

myconnection = SQLiteDatabase.openDatabase(<MyPath>, null, SQLiteDatabase.OPEN_READONLY); // <MyPath> is like /sdcard/selectedfolder/mydatabase.sqlite

0 个答案:

没有答案