android - 在 sharedPreference 或 SQL 中保存对象或对象 ID
问题描述
在我的杂货店应用程序中,我将用户选择的产品保存在单例类中。现在根据新要求,每当用户重新打开应用程序时,都应该再次检索这些产品(购物车)。类产品有很多领域:
{
"imageDisplay",
"categorySpecial",
"_id",
"name_ch",
"name_en",
"origin_ch",
"origin_en",
"description_ch",
"description_en",
"specification_ch",
"specification_en",
"unit_ch",
"unit_en",
"priceOriginal",
"price",
"stock",
"sold",
"isOnShelf",
"processingPriority",
"imageCover"
}
1)我的第一个问题是我应该只保存所有产品字段还是只保存产品 ID。如果我保存产品 ID,我将不得不在应用程序启动时检索所有购物车产品的详细信息,但如果我保存产品的所有字段那么它将占用大量内存。
哪一种是保存产品的首选方式?
据我所知,有 3 个选项 1)存储在共享首选项中 2)存储在文件中 3)存储在 sql 中
解决方案
您还可以使用简单的 SQLite 数据库。由于您只需要存储杂货,我认为您不需要超过一张 2-3 行的桌子。Android 有很好的文档。如果您对此有任何疑问,可以在这里提问或查看一些分步教程。
安卓文档: https ://developer.android.com/training/data-storage/sqlite
推荐阅读
- c# - 在 .NET Core 3.1 中使用 ImageSource?
- tsql - SQL Server 更改多个表的列数据类型
- angular - 即使安装了 Typescript 3+ 版本,Typescript 3+ 功能也不起作用
- python - 将不同行中的多个数字连接成一个整数
- r - 另一个变量的权重 ggridges
- android - 在 Firebase 中启用离线时,onDataChange 被多次调用
- c# - 将 PHP CURL 转换为 C#
- hibernate - 无法在 Kotlin 中添加条件 api 谓词,获取类型接口失败错误
- c++ - 将 OpenSSL 静态库添加到 Visual Studio 2017 项目
- python-3.x - 列表不按顺序循环更新