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

Android应用通过Intent从一个Activity跳转至另一个时崩溃

解决登录页跳转注册页崩溃的排查步骤

兄弟我太懂这种卡超简单操作上的憋屈感了!折腾好几个小时就为个页面跳转,换控件改代码都没用,简直抓狂。别慌,咱们一步步排查,大概率是某个容易忽略的小细节:

第一步:先查Manifest有没有漏注册注册Activity

这是新手最容易踩的坑!如果你的RegisterActivity没在AndroidManifest.xml里声明,系统根本找不到这个页面,一点击必崩。检查下有没有这段代码:

<application ...>
    <!-- 你的登录Activity -->
    <activity android:name=".LoginActivity" />
    <!-- 必须加这个!注册Activity的声明 -->
    <activity android:name=".RegisterActivity" />
</application>

如果是嵌套在子包下的,比如com.example.app.auth.RegisterActivity,要写全路径或者用.auth.RegisterActivity。

第二步:检查点击事件的绑定和Intent写法

不管用TextView还是Button,先确认点击事件有没有正确绑定:

  • 是不是findViewById的时候写错了控件id?比如xml里是tv_register,代码里写成tv_login,导致控件对象为null,点击时触发空指针崩溃。
  • Intent的上下文和目标类有没有传错?给你贴个标准的跳转写法,对比下:

Java版本

// 在LoginActivity里的点击事件代码
TextView tvRegister = findViewById(R.id.tv_register);
tvRegister.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 这里一定要用LoginActivity.this,别用getApplicationContext()
        Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
        startActivity(intent);
        // finish()要不要加看你需求,不想返回登录页就加,和崩溃无关
        // finish();
    }
});

Kotlin版本

val tvRegister = findViewById<TextView>(R.id.tv_register)
tvRegister.setOnClickListener {
    val intent = Intent(this@LoginActivity, RegisterActivity::class.java)
    startActivity(intent)
}

第三步:排查注册Activity本身的问题

有时候不是跳转的锅,是你跳过去的注册页自己有问题!比如RegisterActivity的onCreate方法里,有没有写错布局id?或者初始化了一个不存在的控件?比如:

// 错误示例:布局id写错,导致加载布局失败崩溃
setContentView(R.layout.activity_login); // 应该是activity_register

这种情况跳转时会触发注册页的崩溃,看起来像是跳转失败,但其实是目标页的问题。

最关键的一步:看崩溃日志!

别瞎试了,打开Android Studio的Logcat,搜索FATAL EXCEPTION,里面会明确告诉你崩溃的原因:

  • 如果是ClassNotFoundException:基本就是Manifest没注册注册Activity
  • 如果是NullPointerException:要么是点击的控件为null,要么是注册页里有null对象调用方法
  • 如果是InflateException:注册页的布局有问题,比如控件id写错或者布局结构错误

把日志里的错误信息和行号找出来,直接定位问题,比瞎试效率高10倍!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:30:07