Android:在SD卡上使用SQLite数据库(根本不使用内部Android数据存储)

rvp*_*als 11 sqlite android

有人可以给我一些链接/教程来使用存储在SD卡上的SQLite文件吗?没有实现OpenHandler.

/ SD CARD // info.db.

我想使用外部SQlite数据库文件(不使用Android内部数据存储),因为我想经常更新数据库文件,以提供有关info.db的更多最新信息.

谢谢.

mre*_*elt 18

你试过用过SQLiteDatabase.openOrCreateDatabase(String, SQLiteDatabase.CursorFactory)吗?您可以简单地"/sdcard/info.db"作为第一个null参数和第二个参数传递.

  • 很好的建议,但是你不应该提及,至少在传递中,当应用程序无法加载数据库时会发生什么,因为没有安装SD卡? - 其他2M会出错的事情:) (4认同)
  • 哦,好点!我完全忘了提到SD卡可能不可用.您注意到它是完美的,因为我当前的项目还需要将数据缓存到SD卡上的SQLite DB中(如果可用). (2认同)

dbm*_*dbm 9

由于部分安全问题,我建议你不要把数据库放在SD卡上(每个有物理访问设备和SD卡的人,包括设备上运行的所有应用程序,也会有或多或少的完全访问权限)数据库文件的权限)但也是由于硬件问题(SD卡的寿命有限,因为可以对其执行的写操作总数).

这里还讨论了这些问题:SD卡上的SQLite数据库

  • 这就是我使用https://github.com/sqlcipher/android-database-sqlcipher (2认同)