重新加载的方法完整的应用程序状态?

时间:2018-11-02 15:21:39

标签: android

我有一个问题,我知道它的答案因一个应用程序而异。

考虑一个类似Telegram的应用,其中有大量的数据,例如联系人和聊天记录。当您关闭应用程序并随后重新启动时,即使您没有与互联网的任何连接,应用程序也会加载您的联系人和聊天记录,并且只需几秒钟即可完成。我想知道这些工作是如何完成和实施的?

例如,他们将所有数据存储在文件中的磁盘中(存储磁盘上的数据量可能需要很长时间,而且它们还缓存图像),或者我们将应用程序的每个部分保存在不同的文件中,并在用户每次加载时加载它们打开它们。

2 个答案:

答案 0 :(得分:0)

这称为api数据缓存。重要的是,我们应该知道要缓存的数据和不应该缓存的数据。

NYtimes中有一个库,您可以将其用于翻新的api级缓存。

enter image description here

答案 1 :(得分:0)

您有两种在Android中存储数据的常用方法。 SharedPreferences和本地数据库。

在继续之前,您应该查看有关在Android上存储数据的其他文章。他们中有很多人比我能更好,更深入地解释它,我仅举一些示例供您使用。

documentation link或只是谷歌搜索它!

SharedPreferences

SharedPreferences在Key -> Value中工作,用于保存基本数据类型。适合存储用户令牌,设置和类似内容。

Start here

数据库

Android使用SQLite进行本地数据存储,并且有许多库可以帮助您解决此问题。

更值得注意的是See more,但是还有其他一些非常流行的用法。数据库非常适合存储大量数据,例如您正在讨论的示例中的对话和联系人。

缓存

您还可以访问缓存数据,但是请记住,这是一个临时存储,如果要存储诸如用户信息或其他复杂数据之类的内容,则应坚持使用数据库。缓存对于图像很有用。