猿问

Android - 检查活动是否第一次打开

在人们说这是“检查 android 是否首次运行”的重复之前,这个问题是检查活动本身(而不是整个应用程序)是否第一次打开。


我有不同的活动来运行 Material Tap Target Prompt,所以有几个解释按钮和功能的弹出窗口。但我只希望它为第一次使用的用户运行。


现在我尝试了以下方法:


        if (prefs.getBoolean("firstRun", true)) {

            prefs.edit().putBoolean("firstRun",false).apply();

                 ........Do the pop ups

}

但这将为整个应用程序设置它,因此当用户进入下一个屏幕时,它不会运行,因为布尔值设置为 false。


所以我试图找到一种方法来检查活动本身是否是第一次打开,但我似乎找不到任何可以解决这个问题的方法。


我想过使用变量然后将其设置为 1。但是如果用户重新启动应用程序,它会崩溃等,那么该变量将被重置。


可能的其他选择是在数据库中创建一行,然后根据活动检查它是否设置为 1 或其他值。


但也许有更简单的方法?


慕容3067478
浏览 110回答 1
1回答

ITMISS

为什么不为每个活动创建首选项键。下面添加了示例代码:if (prefs.getBoolean(MainActivity.class.getCanonicalName(), true)) {           prefs.edit().putBoolean(MainActivity.class.getCanonicalName(),false).apply();                 ........Do the pop-ups}
随时随地看视频慕课网APP

相关分类

Java
我要回答