使用sqlite数据库进行Java登录

使用sqlite数据库进行Java登录,java,android-studio,login,Java,Android Studio,Login,大家好,我需要帮助,因为我有逻辑问题,我不知道我的代码中有什么问题,我创建了classe DB_SQLite,我编写了这个函数 public Boolean loginValidation(String email, String password){ Boolean ResFunct = false; SQLiteDatabase db = this.getReadableDatabase(); Cursor res = db.rawQuery("select *

大家好,我需要帮助,因为我有逻辑问题,我不知道我的代码中有什么问题,我创建了classe DB_SQLite,我编写了这个函数

public Boolean loginValidation(String email, String password){
     Boolean ResFunct = false;

    SQLiteDatabase db = this.getReadableDatabase();
    Cursor res = db.rawQuery("select * from login",null);
    res.moveToFirst();
    while(res.isAfterLast()== false){
        String idDb = res.getString(res.getColumnIndex("ID"));
        String emailDb = res.getString(res.getColumnIndex("email"));
        String passwordDb = res.getString(res.getColumnIndex("password"));
        String nomDb = res.getString(res.getColumnIndex("nom"));
        String prenomDb = res.getString(res.getColumnIndex("prenom"));
        if(email == emailDb && password == passwordDb){
            ResFunct=true;
            break;
        }
        else{
            res.moveToNext();
        }

    }
    return  ResFunct;
}
我创建事件onClick-in按钮join

View.OnClickListener onjoin = new View.OnClickListener() {
        @Override
        public void onClick(View view) {
         // Toast.makeText(MainActivity.this,"Join ...",Toast.LENGTH_SHORT).show();
            String NomComplet;
            Boolean Valide = false;
            emailString = email.getText().toString();
            passwordString = password.getText().toString();

            Valide = db.loginValidation(emailString, passwordString);

            if (Valide == true){
                NomComplet = db.loginReturnNomComplet(emailString, passwordString);

                Intent intent = new Intent(MainActivity.this, Join.class);
                intent.putExtra("NomComplet",NomComplet);
                startActivity(intent);
            }
            if (Valide == false){
                AlertDialog.Builder a_builder = new AlertDialog.Builder(MainActivity.this);
                a_builder.setMessage("Your information is incorect").setCancelable(false).setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        dialogInterface.cancel();
                    }
                });
                AlertDialog alert = a_builder.create();
                alert.setIcon(R.drawable.fff);
                alert.setTitle("Error");
                alert.show();
            }
        }
    };
    join.setOnClickListener(onjoin);

但是函数return just false也是当我输入valide email和password correct来比较两个字符串时,您需要使用
.equals()
而不是
=
,否则它们不会被比较。所以你需要像这样重写你的条件:

if(email.equals(emailDb) && password.equals(passwordDb))

您的代码是否输入了
while
语句?是,代码输入while语句@yassadimaybe条件if语句