android - 如何将来自 url 的图像存储在 Room 数据库中(Java)
问题描述
我正在对 Room 数据库进行整个 API 响应以进行离线访问。我已设法存储所有字符串值,但我也想将图像(获取图像 url 作为响应)存储到数据库中。由于我没有使用 Room 数据库的经验,我对如何在 Room db 列中存储图像感到困惑 下面是 API 响应
{
"beast": [{
"id": "1",
"name": "The Griffin of Edward III",
"description": "The English Beast has always been a lion",
"image": "www.google.com/uploads/beast-images/2.png"
},
{
"id": "2",
"name": "The Lion of England",
"description": "The English Beast has always been a lion",
"image": "www.google.com/uploads/beast-images/2.png"
}]
}
解决方案
您可以将图像作为 blob 类型存储在房间数据库中。您应该将图像转换为字节数组并保存。例子:
@ColumnInfo(name = "image", typeAffinity = ColumnInfo.BLOB)
private byte[] image;
推荐阅读
- c - 如何使用 fgets() 重新分配多个数组
- javascript - 将 amCharts 用于 Web 应用程序时,是否有更好的方法来隐藏 JSON 数据?
- postgresql - 如何在 postgres 中使用 group by 中的多个过滤器?
- sql - 使用 xpath 从 SQL Server 获取数据
- swift - UITableView 不滚动问题
- python - Graphviz:显示节点属性
- java - JVM 版本冲突导致 Eclipse / Jetty 无法正常运行
- spring-boot - 访问我的 heroku spring-boot 休息站点给出错误代码=H10
- javascript - 为什么 responsivevoice.org 不能使用我的 Javascript?
- javascript - 在 Outlook 中为 Office.EventType.RecipientChanged 注册处理程序的正确方法是什么?