0

我希望存储简单的变量,以便如果应用程序进程停止,数据在重新启动时仍然可用。我研究了扩展 Application 类和 sharedPreferences。对我来说,扩展 Application 似乎有利于在应用进程停止时删除的临时全局变量。但是 sharedPreferences 将变量保存到文件中,以便始终可用。两者有什么区别,它们的最佳用途是什么?此外,即使应用程序停止,存储您想要保留的变量的最佳方法是什么?

4

1 回答 1

4

当您的应用程序的进程被终止时,存储在 Application 类中的所有数据都将丢失。您应该只使用它来存储在您的应用程序的多次启动和使用中不需要的数据。

对于存储简单数据,如高分、声音偏好、在启动偏好时显示对话框,您最好的选择是 SharedPreferences。对于更全面的数据,例如用户在您的应用程序中购买的列表,或待办事项列表应用程序中的注释,您应该使用 SQLite 数据库。

除此之外,如果您想存储PDF等文件或图像(图像也可以保存到数据库中),您可以使用内部存储或外部存储(可能是SD卡,或内部存储上的分区) )。请记住,在大多数设备上,内部存储空间非常有限,您不应在其中保存过大的文件。

部分文档应该可以帮助您选择存储选项。

于 2013-01-06T20:48:45.560 回答