我正在研究现有的代码库。我正在尝试向 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()
在 Activity 和 Activity 中都被调用>它加载的 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/