首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在安卓系统中,有没有办法在卸载后保留SharedPreferences?

在安卓系统中,有没有办法在卸载后保留SharedPreferences?
EN

Stack Overflow用户
提问于 2012-03-22 09:44:49
回答 7查看 16.8K关注 0票数 28

我将一些应用程序元数据保存在SharedPreferences中。每当我卸载并重新安装应用程序时,SharedPreferences都会被删除。

有没有办法让它保留下来,这样如果用户卸载并重新安装,他们可以恢复他们的旧数据?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2012-03-22 10:31:35

你应该在你的应用中添加一个BackupAgentHelper。它与SharedPreferenceBackupHelper一起将SharedPreferences备份到云中(如果设备支持)。当应用程序被重新安装时,数据被恢复。

请参见:

BackupAgentHelper

SharedPreferenceHelper (contains all the code you need to implement it)

general Backup guide

票数 21
EN

Stack Overflow用户

发布于 2012-03-22 09:51:19

我很确定SharedPreferences总是和应用程序一起被删除。在我看来,最好的方法是将一个隐藏文件(类似于".nameOfFile")写入SD卡或内部存储器,并使其包含首选项。

你应该使用SharedPreferences,因为它是Android的偏好管理标准。你可以这样做,在你的应用程序第一次加载时,它会检查SDCard中是否有一个隐藏文件,这个文件是他们上次打开它时创建的。如果该文件存在,则读取这些输入并将其存储在SharedPreferences中,如果不存在,则要么用户删除了该文件,要么用户从未安装过你的应用程序。

这只是一种方法,它可能不是最有效的,但我希望它能有所帮助!

票数 3
EN

Stack Overflow用户

发布于 2012-03-22 10:01:44

一种方法是将用户数据存储在服务器上。然后,当用户重新安装应用程序或在另一台设备上安装应用程序时,他们可以“同步”他们的用户数据。这只是一个很小的数据HTTP下载,很可能存储在JSON中,然后解析并写入SharedPreferences。

如果你不想维护自己的服务器,你可以使用像Dropbox这样的云服务。这就是应用程序1Password Reader的工作原理。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9815363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档