Android onCreate()vs Activity Loaded

时间:2015-12-12 04:31:05

标签: android

我正在创建一个应用程序来检查应用程序何时首次加载。我在MainActivity类中创建了一个值(在onCreate()方法之前)。我需要这个,因为我想要只在第一个应用程序加载时运行。什么时候加载Activity类?我知道只要应用程序打开并呈现,onCreate()方法就会运行,但似乎活动在应用程序关闭的延长时间后重新加载。有没有办法在应用程序首次加载时存储变量,但在onCreate()运行时不会重置?

2 个答案:

答案 0 :(得分:0)

子类Application并在Application onCreate()方法中执行您正在进行的任何初始化。您还需要在AndroidManifest的<application>标记中指定Application类的名称。每次应用程序进程启动时都会运行一次。

如果您想在第一次启动应用程序时运行某些内容而不再使用(甚至在将来的启动时),您仍应使用Application子类,但现在您还需要在SharedPreferences(或其他地方)中存储某些内容您可以稍后检查以确保您只执行一次此任务。

答案 1 :(得分:0)

SharedPreferences.Editor ed=PreferenceManager.getDefaultSharedPreferences(YourActivityName.this).edit();

ed.putString("key","value").commit();

要从共享首选项中获取值,请执行以下操作:

String storedValue=PreferenceManager.getDefaultSharedPreferences(YourActivityName.this).getString("key","default Value In Case The Variable Hasn'tBeen Created");