1

我有一个关于将图像保存在应用程序中的 SQLite 数据库位置的问题。

我为 iOS 制作了一个应用程序,用户可以在其中拍摄照片或从应用程序中获取现有照片,然后将它们保存在自己的应用程序中的本地银行中,因为 IOS 没有太多磁盘空间问题。

在 Android 上已经有拍摄照片或使用现有照片的代码,现在想知道如何将它们保存在 SQLite 数据库中。(?)

我一直在阅读,有人建议将图像保存在 SD 卡中并仅将图像路径插入数据库,但如果由于某种原因将其从 SD 卡中排除,您的应用程序中将出现错误,因为不再引用的路径存在。

什么是理想的解决方案?

4

2 回答 2

2

您应该只将图片的名称保留在数据库中并将图片存储在内部存储中,而不是存储在 sdcard 上,首先将它们保存为仅对您的应用程序私有。

于 2012-12-11T20:47:54.023 回答
1

理想的解决方案是将其存储在 SD 卡中。存储在数据库中不会阻止用户删除它。如果用户清除应用数据,您也会丢失此信息。用户执行此操作时,所有数据库都将被删除。

无论如何,如果您选择 SQLite 解决方案,您可以使用 blob 字段。请记住,某些版本的 SQLite 不支持大型 blob 数据。看一下这个:

http://effbot.org/zone/sqlite-blob.htm

我也建议这样做:

http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html

于 2012-12-11T19:50:45.900 回答