【问题标题】:SQLite or SharedPreferences for persistent data storage?用于持久数据存储的 SQLite 或 SharedPreferences?
【发布时间】:2011-02-05 21:14:57
【问题描述】:

对于数据的持久存储,与 SharedPreferences 相比,使用 SQLlite 数据库是否有任何明显的优势,反之亦然?目前我的应用程序数据只有几千字节大小,但可以想象它在未来可能会增加到这个大小的十倍。我找不到任何地方说明使用 SharedPreferences 有多少存储可用,但可以想象这将是使用它的一个限制吗?这两种方法的速度有什么区别吗?我正在权衡这两种存储方法的优缺点。

【问题讨论】:

    标签: android storage lifecycle


    【解决方案1】:

    在我的头顶:

    SharedPreferences:

    专业版:

    • 轻量级
    • 快速且易于使用
    • 易于调试
    • 如果需要,可以手动编辑配置文件

    缺点:

    • 处理大量数据时速度很慢
    • 当数据不仅仅是一个简单的键/值事件时没有帮助
    • 需要读取和解析整个文件才能访问数据
    • 占用空间较大,每个条目周围都有相当多的ASCII数据,而且所有数据本身也是ASCII。

    SQLite:

    专业版:

    • 很好地扩展
    • 更改不需要从头开始重写整个数据文件
    • 强大的查询

    缺点:

    • 要编写更多代码
    • 更重量级(代码和内存),在处理少量数据时过度杀伤

    【讨论】:

    • 我在哪里可以找到更多关于 sharefprefs 在处理大量数据时变慢以及需要解析整个文件才能访问数据的信息?我认为我们正在解决这个问题,我正在尝试了解系统的工作原理(计划迁移到 SQLite)。
    猜你喜欢
    • 2023-03-09
    • 2013-05-12
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 2017-04-26
    相关资源
    最近更新 更多