我希望通过不同的活动跟踪变量,但我不想使用Shared Preferences。
我可以拥有一个带有静态变量和静态方法的类,但是当应用程序关闭并再次打开时,我会丢失数据。
// Data lost when app is closed.
public class DataHolder
{
static boolean isDone = false;
public static boolean isDone()
{
return isDone;
}
public static void setIsDone(boolean done)
{
isDone = done;
}
}
如何在设备开启时保留数据?
基本上我希望我的数据保持活动状态,直到我重新启动设备。
我不想使用共享首选项,因为重新启动时数据必须重置。而且我认为我无法重启以清除数据。我想我可以在BOOT_COMPLETED
时清除共享偏好设置,但也许有人有更好的想法。
答案 0 :(得分:1)
据我所知,将数据保存到持久存储是您的问题的好答案。让我们按照你的说法使用SharedPreferences和BOOT_COMPLETED。
答案 1 :(得分:0)
您可以使用数据库保存数据,给您带来不便吗?
答案 2 :(得分:0)
您可以使用静态变量。 但是一旦你的应用程序完全销毁就会破坏它,否则它会在整个应用程序中正常工作
答案 3 :(得分:0)
Android的Application
对象可以替换您的DataHolder
对象。
课程描述
需要维护全局应用程序状态的基类。您可以通过在AndroidManifest.xml的
<application>
标记中指定其名称来提供自己的实现,这将导致在创建应用程序/包的过程时为您实例化该类。
答案 4 :(得分:0)
有三种方法可以在android中的持久存储中存储数据 1.SharedPreference 2.database 3.File