You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击About菜单后应用崩溃,请求排查问题(附相关代码)

问题分析与修复方案

1. 菜单Item ID匹配错误(核心问题)

你在MainActivity.java的onOptionsItemSelected方法中,switch分支的case写了无效的R.id.,这会导致点击About按钮时无法匹配到对应的逻辑,甚至触发异常引发崩溃。正确写法应该对应menu.xml中定义的about ID:

public boolean onOptionsItemSelected(MenuItem item){
  switch (item.getItemId()){
      case R.id.about: // 修正为正确的ID
          Intent intent = new Intent(MainActivity.this, AboutActivity.class);
          startActivity(intent);
          break;
  }
  return super.onOptionsItemSelected(item);
}

2. 检查Activity的exported属性(适配Android 12+)

在AndroidManifest.xml中你将AboutActivity的exported设为false,如果应用运行在Android 12(API 31)及以上系统,虽然同一应用内启动该Activity理论上允许,但如果崩溃日志提示权限相关错误,可尝试将exported改为true:

<activity
    android:name=".AboutActivity"
    android:exported="true">
</activity>

3. 可选:排查布局控件空指针

如果崩溃日志显示NullPointerException,请确认activity_about.xml中存在id为textViewLink的TextView,否则findViewById会返回null,调用setMovementMethod时会触发崩溃。


内容的提问来源于stack exchange,提问作者Adam Rahim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 04:40:18