多Activity应用添加第三个Activity后异常:跳转回主Activity且二次启动崩溃
问题排查与解决方案
1. 检查Manifest注册
- 确保
AdminActivity在AndroidManifest.xml中正确注册,避免错误配置引发跳转或崩溃:<activity android:name=".AdminActivity" android:exported="false" /> - 优先使用显式Intent启动Activity,避免隐式Intent匹配错误:
startActivity(Intent(this, AdminActivity::class.java))
2. 解决super.onCreate崩溃问题
- 确认
AdminActivity继承自正确的父类,比如AppCompatActivity,而非错误基类:class AdminActivity : AppCompatActivity() { // ... } - 查看完整Logcat崩溃栈,这类崩溃常见于Theme不兼容:比如给Activity设置了
NoActionBar主题,但代码中调用了ActionBar相关方法,或Theme引用了不存在的资源。 - 临时测试:将
super.onCreate(savedInstanceState)改为super.onCreate(null),若不再崩溃,说明是保存的实例状态数据异常,需排查状态恢复逻辑。
3. 修复setContentView无效(空白页面)问题
- 核对布局文件名
activity_adminactivity.xml的拼写,Android资源文件名区分大小写,确保和代码引用完全一致。 - 检查布局文件语法:打开Android Studio布局编辑器,若预览失败,说明存在未闭合标签、无效资源引用等问题,修复后再测试。
- 确保
setContentView(R.layout.activity_adminactivity)是onCreate中第一个UI相关调用,没有被其他代码覆盖(比如多次调用setContentView)。
4. 解决首次跳转回主Activity的问题
- 检查启动
AdminActivity的代码,是否误写了finish(),导致当前Activity被关闭回到主Activity。 - 排查任务栈配置:若主Activity的
launchMode设为singleTask,可能导致启动新Activity时主Activity被拉到栈顶,可调整为默认的standard。
内容的提问来源于stack exchange,提问作者Karan
相关产品推荐
相关产品推荐

