Kotlin Activity中onNewIntent()编译报错:已加super仍提示需调用
解决onNewIntent()已调用super仍报编译提示的问题
以下是几个实用的排查方向:
核对方法签名一致性
确保你重写的onNewIntent()和父类的签名完全一致,包括参数类型、访问修饰符:@Override protected void onNewIntent(android.content.Intent intent) { super.onNewIntent(intent); // 你的业务代码 }重点检查:不要导错Intent的包、方法修饰符必须是
protected、参数不能少传。检查Lint规则是否被篡改
查看项目的lint.xml或app模块的build.gradle,确认有没有对MissingSuperCall规则做异常配置——比如误将其设为强制报错,但检测逻辑出问题。验证父类的onNewIntent实现
如果你继承的是自定义Activity子类,要确认这个父类自己的onNewIntent()方法里确实调用了super.onNewIntent(intent)。如果父类没调用,即使子类加了,Lint可能仍会误报。更新开发工具版本
旧版Android Studio或Gradle插件可能存在Lint检测bug,尝试升级到最新稳定版,再同步、重新编译项目。排查字节码修改工具干扰
如果项目用了ProGuard、R8或字节码插桩框架,这些工具可能干扰Lint的检测逻辑。可以临时关闭它们,重新编译看报错是否消失,以此定位问题。
内容的提问来源于stack exchange,提问作者Ishika Singh
相关产品推荐
相关产品推荐

