<分区>
我想以结构形式存储数据,即有关许多调用的所有信息(如调用日志)。我应该选择什么?我不想与其他应用程序共享我的数据。
- SQLite数据库
- 内容提供者
- 共享偏好
- 或文件存储
- 或任何我不知道的满足我要求的方式。
<分区>
我想以结构形式存储数据,即有关许多调用的所有信息(如调用日志)。我应该选择什么?我不想与其他应用程序共享我的数据。
最佳答案
SharedPreferences
显然在内部实现为一个 XML 文件,该文件在更新时被完全序列化和反序列化。它是一个没有索引的 Key-Value 存储。因此,仅将其用于与您的应用关联的简单数据。任何超过 50 个键,您可能已经过头了。
ContentProvider
旨在跨应用程序共享数据。您已明确表示不想这样做。
SQLiteDatabase
旨在供各个应用程序存储数据,并提供很大的灵 active 以不同方式存储和索引数据。我个人使用它在我的一个应用程序中存储日志。我会推荐那条路线。
另一种选择是登录存储在文件存储中的普通文本文件。
关于java - 在 Android 中存储数据的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5617307/
相关文章:
java 8 - Icomparable<T> 的注释 compareTo <T> 也添加了注释 compareTo(Object o)
android - 如何将数据写入文件并从应用程序外部访问它(没有 SD 卡)?
php - 使用 PHP 的 RSS 提要将日期时间 (GMT) 发布为 Unix 时间戳格式
java - 提供多个数据值后,可以编写什么代码来比较数据并确定最高/最低值? java
android - C/C++ printfs - 它出现在 Android native 代码中的什么位置?
android - 在高 PPI 屏幕上,使用 CSS background-size 在 WebView 中提供模糊图像