我正在开发一个Android应用程序,但我需要一些帮助。我需要存储大约2000张高分辨率的图像(1024x768和大约2.5MB),应用程序必须离线工作,所以我不能从在线数据库或其他任何地方检索它们。这些图片应该存储在应用程序内部的SQLite db中,因为它们中的每一个都与特定的产品相关。
我试图将图片转换为Base64字符串,但结果太大,应用程序崩溃。它只有在大约467x300和30KB的情况下才能工作,但它失去了所有的质量,所以这不是一个好的解决方案。
希望你有有用的建议。谢谢。
发布于 2016-01-27 22:14:15
通常解决此问题的方法是不将图像存储在数据库中,而是将指向它们的链接存储在数据库中。如果您希望它们是私有的,请将它们存储在私有应用程序存储位置。从数据库中获取图像是很棘手的,而且像这样编辑二进制blob也很棘手。它可能会导致数据库出现问题,这可能会导致运行速度变慢。此外,从文件加载图像比从数据库加载图像更容易。
此外,您还可以使用BLOB,它允许存储二进制数据。SQLite支持这一点,所以...
发布于 2016-01-27 22:21:52
下面是我用来处理高分辨率图片的方法:
我很乐意提供一个代码示例,请让我知道。
https://stackoverflow.com/questions/35039639
复制相似问题