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

自制App点击登录按钮崩溃,跳转LoginActivity失败

点击登录按钮跳转Activity时App崩溃退回主屏幕的排查与解决

我开发了一款具备用户名/密码注册功能的基础App(注册功能正常),但点击登录按钮时App直接崩溃退回手机主屏幕,无法跳转到预期的LoginActivity。登录按钮的点击事件代码如下:

signin.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Intent intent1 = new Intent(getApplicationContext(), LoginActivity.class);
        startActivity(intent1);
    }
}

常见原因及解决方法

  • 1. 未在AndroidManifest.xml中注册LoginActivity
    这是最常见的触发原因,Android系统无法识别未注册的Activity。打开AndroidManifest.xml,确认LoginActivity已在<application>标签内完成注册,格式示例:

    <activity android:name=".LoginActivity" />
    

    若LoginActivity位于不同包下,需填写完整类名,比如com.example.myapp.LoginActivity。

  • 2. 代码语法错误
    检查给出的代码可以发现,setOnClickListener的代码块末尾缺少闭合的);,修正后的正确代码如下:

    signin.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent1 = new Intent(getApplicationContext(), LoginActivity.class);
            startActivity(intent1);
        }
    }); // 补充缺失的闭合括号与分号
    

    这类语法错误会直接引发运行时异常,导致App崩溃。

  • 3. LoginActivity内部存在初始化异常
    即便跳转逻辑正确,若LoginActivity的onCreate方法中存在错误(比如未初始化的控件、空指针异常、无效资源引用等),也会导致跳转时崩溃。可以查看Logcat中的错误日志,搜索LoginActivity相关的异常信息,快速定位具体问题。

  • 4. Context使用不当
    尽量避免使用getApplicationContext()启动Activity,改用当前Activity的上下文(比如YourCurrentActivity.this),应用上下文在部分场景下无法正确启动Activity:

    Intent intent1 = new Intent(YourCurrentActivity.this, LoginActivity.class);
    startActivity(intent1);
    

排查建议

优先查看Logcat的崩溃日志,搜索FATAL EXCEPTION关键字,日志会明确标注崩溃原因(比如ActivityNotFoundException、NullPointerException等),这是定位问题最直接的方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 13:01:06