Android studio调试

  • Post author:
  • Post category:其他


Android studio中,程序可以正常执行,但总有组件运行异常,返回的不是我们想要的结果。这时候我们就可以通过调试来解决问题。

调试器只是一个工具,就像示波器,本身不能帮我们发现问题,只是给我们方便的观察手段,分析和发现问题仍然要靠你自己.分析问题的能力是程序员需要训练的重要技能。

调试通常有两张方法:

在这里插入图片描述

以一个实例来操作如何在Android中进行调试操作。

package activity;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import net.hnjdzy.tinyaccount.R;

public class LoginActivity extends AppCompatActivity {
    Button btnLogin;
    EditText editTextName, editTextPwd;
    TextView textViewRegister;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);//xml和java连接起来
        btnLogin = (Button) this.findViewById(R.id.buttonLogin);//绑定按钮登录框
        editTextName = (EditText) this.findViewById(R.id.editTextName);//绑定用户名登录框
        editTextPwd = (EditText) this.findViewById(R.id.editTextPassword);//初始化控件
        textViewRegister = (TextView) this.findViewById(R.id.textViewRegister);
        btnLogin.setOnClickListener(new View.OnClickListener() {//通过匿名内部类,实现点击事件监听器接口
            @Override
            public void onClick(View v) {//视图被点击以后调用
                Login();

            }
        });//监听器回调Login方法

        textViewRegister.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Register();
            }
        });

    }

    //定义登录方法
    private void Login() {
        String name = editTextName.getText().toString(); //获取文本框输入的姓名
        String pwd = editTextPwd.getText().toString();//获取文本框输入的密码
        if (name.equals("admin") && pwd.equals("admin")) {
            Toast.makeText(this, "登录成功", Toast.LENGTH_LONG).show();//弹出登录成功窗口,要用到Toast类的makeText方法
            //三个信息,第一个上下文,第二个提示的信息,第三个提示显示的时间
        } else {
            Toast.makeText(this, "登录失败", Toast.LENGTH_LONG).show();//弹出登录失败窗口
        }
    }

    //定义跳转方法
    private void Register() {
    Intent intent=new Intent();//创建intent对象
    intent.setClass(this,RegisterActivity.class);//指定从当前页面跳转登录页面
    startActivity(intent);//启动intent
    }
}

如果

在这里插入图片描述

中equals改成==那么无论用户名密码输入怎么输入都会提示错误。

在这里插入图片描述

我们在49行最左边做出标记,以此作为断开的节点。

在这里插入图片描述

点击debug开始调试:

在这里插入图片描述

页面在节点处断开,提示信息
在这里插入图片描述

我们点击下一跳看一下问题处在哪
在这里插入图片描述

发现无论输入什么他的吓一跳永远在登陆失败,即可发现程序存在的问题。



版权声明:本文为qq_48141992原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。