Java Android-检查活动是否第一次打开
在人们说这是“检查android是否首次运行”的重复之前,这个问题是检查活动本身(而不是整个应用程序)是否首次打开 我有不同的活动运行Material Tap Target Prompt,所以有几个弹出窗口解释按钮和功能。 但我只想让它为第一次使用的用户运行 现在我尝试了以下方法:Java Android-检查活动是否第一次打开,java,android,Java,Android,在人们说这是“检查android是否首次运行”的重复之前,这个问题是检查活动本身(而不是整个应用程序)是否首次打开 我有不同的活动运行Material Tap Target Prompt,所以有几个弹出窗口解释按钮和功能。 但我只想让它为第一次使用的用户运行 现在我尝试了以下方法: if (prefs.getBoolean("firstRun", true)) { prefs.edit().putBoolean("firstRun",false).appl
if (prefs.getBoolean("firstRun", true)) {
prefs.edit().putBoolean("firstRun",false).apply();
........Do the pop ups
}
但这将为整个应用程序设置它,因此当用户进入下一个屏幕时,它将不会运行,因为布尔值设置为false
所以我试图找到一种方法来检查活动本身是否是第一次打开的,但我似乎找不到任何可以解决这个问题的方法
我考虑使用一个变量,然后将其设置为1。但是,如果用户重新启动应用程序,应用程序崩溃等,那么var将被重置
另一种选择可能是在DB中创建一行,然后根据活动检查该行是否设置为1或其他值
但也许有更简单的方法
谢谢为什么不为每个活动创建首选项键呢。下面添加了示例代码:
if (prefs.getBoolean(MainActivity.class.getCanonicalName(), true)) {
prefs.edit().putBoolean(MainActivity.class.getCanonicalName(),false).apply();
........Do the pop-ups
}
只需为每个活动创建不同的键-“firstRunActivity1”、“firstRunActivity2”等。您可以尝试将其用作键-
MyActivity.class.getSimpleName()
,因为我不知道您可以这样做。我给你这个就走。谢谢@vizsatiz什么是prefs
?首选项键。很抱歉迟了答复