java - 无法恢复 Activity SuperNotCalledException。 Activity 未调用 super.onResume()

标签 java android android-activity

我正在研究现有的代码库。我正在尝试向 Activity 添加深层链接。但是,当我测试深层链接时,它会转到Activity,然后加载Fragment,但随后强制关闭并出现以下错误。当我调试时,它会上升到其余调用排队的位置,但在响应之前 Activity 关闭。

java.lang.RuntimeException: Unable to resume activity {com.detail.Activity}: android.util.SuperNotCalledException: Activity {com.detail.Activity} did not call through to super.onResume()

但是,我确实有覆盖 onResume 方法,其中 super.onResume()ActivityActivity 中都被调用>它加载的 fragment

@Override
public void onResume() {
    try {
        if (settingsMain.getAnalyticsShow() && !settingsMain.getAnalyticsId().equals(""))
             AnalyticsTrackers.getInstance().trackScreenView("Rating");
        super.onResume();
    } catch (IllegalStateException e) {
        e.printStackTrace();
    }
}

所以不确定是什么原因造成的,而且我是 Android 开发的新手。感谢任何帮助。

最佳答案

它不会被调用,因为 AnalyticsTrackers.getInstance().trackScreenView("Rating") 抛出异常并且代码跳转到 catch block ,导致 SuperNotCalledException

应该是

@Override
public void onResume() {
    super.onResume();

    try {
        if (settingsMain.getAnalyticsShow() && !settingsMain.getAnalyticsId().equals(""))
            AnalyticsTrackers.getInstance().trackScreenView("Rating");
    } catch (IllegalStateException e) {
        e.printStackTrace();
    }
}

关于java - 无法恢复 Activity SuperNotCalledException。 Activity 未调用 super.onResume(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64721668/

相关文章:

java - 使用递归求平方根(牛顿算法)

java - 使用并解析 request.getParameter 中的 Double ("price");

maven-2 - 如何在不编写任何 pom.xml 的情况下从 Maven Central 下载 jars

android - 我的应用程序无法在 API 23 中运行

android - 如何启动浏览器打开本地文件

android - 一个简单的客户端-服务器 - Android<>PC

android - 对话与 Activity 的使用

JAVA:如何在文本文件的一行中解析整数(由可变数量的空格分隔)

java - 自定义编辑文本

java - 当我在 android 中单击最小化/后退按钮时, Activity 消失