我正在开发一个应用程序,该应用程序定期将信息发送到外部服务器。我为发送的数据制作了本地副本,以备备份之用。
就节省电池生命周期而言,存储数据的最佳选择是什么?每个数据提交都是一个大约5K-10K的序列化对象(该类有5个字段,包括日期,数字和字符串)。
还有其他想法吗?
最佳答案
我不直接了解电池生命周期,但有一个标准是哪个更容易管理?较少的操作来管理数据将意味着更少的CPU周期,从而延长电池生命周期。
我会说SQLite选项更容易。您可以在存储数据的SQLite表中放置一个日期列,这使删除不再需要的旧提交变得非常容易-所有这些都通过 native SQL库处理。用您自己的Java代码管理整个文件加载-或更糟糕的是管理一个文件,则工作量更大。
此外,您可以将数据写入数据库,而不必理会它,直到需要再次读取它为止。如果要将数据存储在文件中,则需要确定应何时按照Android application life cycle上的术语来读写文件。如果您担心电池电量不足,可能不希望编写文件的次数过多,也不希望将数据缓存在内存中,但是您需要确保在应用程序暂停或销毁时不会丢失任何数据。 。在我看来,使用SQLite数据库要容易得多,而不必担心其中的任何一个。