插入默认数据时隐藏意图



我有一个意图,只有在某些数据尚未插入时才会出现。插入一些数据就像一个自定义表单。如果数据已经插入,那么在未来打开应用程序时,该意图将不再出现。它将打开另一个意图,即默认意图。(通常情况下,当应用程序第一次打开时可能会发生这种情况)

由于默认意图只能是一个,我该如何管理该意图?

例如:如果应用程序是第一次打开的,它将启动Intent Form下次打开应用程序时(假设数据已经插入),它将启动Intent MainActivity

我只使用sharedpreferences插入数据一次,只需在下面的代码中这样使用即可intent将仅在应用程序首次安装后启动,之后它将启动主活动intent。

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (isFirstTime()) {
// startIntent Form
}
}

private boolean isFirstTime()
{
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
boolean ranBefore = preferences.getBoolean("RanBefore", false);
if (!ranBefore) {
// first time
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("RanBefore", true);
editor.commit();
}
return !ranBefore;
}

我假设您正在做一些类似注册的事情,并且希望显示一次此表单。你有很多选择。

1) 正如Ahmad(在评论中)所说,使用SharedPreferences,并在其中添加一些标志,它可以告诉你数据是否可用。在activity/onCreate的最开始添加一个check,并打开相应的inten/activity依赖于check。

2) 您也可以使用数据库来查看此值。

我建议您使用SPLASH屏幕,将此值/注册数据检查到其中。如果可用,请启动活动A,否则启动注册/默认活动。

最新更新