我正在尝试熟悉 Android 应用程序开发。我正在尝试制作一个简单的应用程序来学习基本技能,但我不确定如何处理应用程序的这一部分。因此,我需要有关如何走得更远的建议。
我有一个简单的应用程序,带有一个按钮和一个带有 0 的 TextView :分数。单击该按钮时,分数会增加 1(通过简单的 java 代码)。当我关闭应用程序并重新启动时,分数再次为 0。
我想要的:关闭应用程序时,必须保存分数,以便重新启动时出现相同的分数。例如,就像那个鸡蛋,你必须点击一百万次。如果多个用户都拥有该应用程序,那么每个人都应该有自己的分数(当然)。因此,该号码确实应该与电话/帐户相关联。
我已经阅读过有关共享首选项的内容。这听起来像是我正在寻找的:存储变量。但是,我不知道这是否适合我想要使用它的用途。该特定电话/帐户的分数永远不应该丢失。用户可能无法自己调整分数(除非单击按钮)。
我的问题:sharedpreferences 是否适合我想要使用它的用途,或者是否有更好的替代方案?
最佳答案
SharedPreferences
用于在设备本地存储小块数据。因此,如果用户卸载应用程序或清除应用程序数据,您存储在SharedPreferences
中的数据将被清除。
如果您不介意卸载/清除数据中的数据丢失,SharedPreferences
无疑是存储如此小信息的最佳方式,因为使用在线数据库是对于这么小的数据来说,这是相当大的杀伤力。
The score should never be lost for that specific phone/account.
但据此,即使用户卸载/清除数据,似乎也不想丢失数据,显然您必须使用像Firebase Real这样的云数据库-时间数据库/Firestore。
如果您希望用户登录/注册,则必须使用 Firebase Auth,否则,您只需将数据存储为 Firestore 上的 PhoneNumber : Score 键值对。
希望对你有帮助
关于java - SharedPreferences 是否合适,或者有更好的选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59590920/