我正在尝试开发出勤应用程序。因此,我希望通过在应用程序中保持用户的登录状态而不将其卸载来将用户在其朋友的签到上签名的行为减至最小。
例如,即使用户在“设置”->“存储”中执行“清除数据”,Facebook也保留用户数据。而且Telegram可以在“设置”->“存储”中显示“管理存储”按钮而不是“清除数据”按钮,这使得清除用户数据非常困难。
我可以知道这两个应用程序如何执行这些操作吗?当用户在后台杀死应用程序时,我能够保留用户身份验证数据,但是我的数据无法通过“清除数据”过程“生存”。请为我提供一些指导,谢谢!
答案 0 :(得分:1)
在描述了您的意思之后,我相信这些应用程序所做的只是使用以下备份机制:https://developer.android.com/guide/topics/data/backup.html
具体来说,因为您需要备份的只是一个用户令牌(例如),以便能够访问您自己的服务器并进行身份验证,然后...然后还原所需的所有数据。
文档说得很清楚:
在安装应用程序后,将还原数据。如果需要,您可以请求手动还原。
也(它是键/值存储,例如SharedPreferences):
注意:如果无法使用Wi-Fi,则“键/值备份”可能会使用移动数据。因此,键/值备份通常不适合应用程序数据内容,例如媒体,下载的文件和缓存,除非数据量很小。
您甚至不需要登录。