如何在第一次启动应用程序时使Activity仅启动一次?

时间:2013-06-24 11:11:27

标签: android

我有一个注册活动,我想在第一次启动应用时只启动一次。如果注册,第二次启动应用程序时,我想直接进入第二个活动 - FirstWindow。

提前谢谢!

3 个答案:

答案 0 :(得分:6)

  

第一次启动活动时:保存true值   共享pref,每次app启动时都会检查共享的pref if   如果转到下一个活动,则显示第一个活动(您的注册   页)

1.Declare变量

SharedPreferences pref;
SharedPreferences.Editor editor;

2.in onCrete方法

pref = getSharedPreferences("testapp", MODE_PRIVATE);
editor = pref.edit();

3.当用户成功注册(点击注册按钮)

editor.putString("register","true");
editor.commit();

然后每次你都可以查看:

String getStatus=pref.getString("register", "nil");
if(getStatus.equals("true"))
redirect to next activity
else
show registration page again

答案 1 :(得分:0)

使用Theme.NoDisplay创建活动并将其作为启动器活动(在清单中为启动器设置意图过滤器)。在onCreate中,检查用户是否已注册并启动相应的活动。您可以将用户的状态(已注册/未注册)存储在DB或SharedPreferences中。

答案 2 :(得分:0)

使用零活动来检查接下来要启动的内容,onCreate:

SharedPreferences sp= getSharedPreferences("first_time", 0);

ActivityZero.this.finish();

if (sp.getBoolean("FirstTime", true))
   mainIntent = new Intent(ActivityZero.this, TutorialActivity.class);              
else
   mIntent = new Intent(ActivityZero.this, MainActivity.class);

ActivityZero.this.startActivity(mIntent);