Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t验证Android SQLite中的用户登录详细信息_Java_Android_Xml_Sqlite_Android Studio - Fatal编程技术网

Java Can';t验证Android SQLite中的用户登录详细信息

Java Can';t验证Android SQLite中的用户登录详细信息,java,android,xml,sqlite,android-studio,Java,Android,Xml,Sqlite,Android Studio,下面是我用来检查用户是否已经是数据库的一部分的代码: Boolean checkEmailPass = db.emailpasswd(email, pass); if (checkEmailPass== false){ Toast.makeText(getApplicationContext(),"Email or password incorrect", Toast .LENGTH_SH

下面是我用来检查用户是否已经是数据库的一部分的代码:

  Boolean checkEmailPass = db.emailpasswd(email, pass);
            if (checkEmailPass== false){
                Toast.makeText(getApplicationContext(),"Email or password incorrect", Toast
                        .LENGTH_SHORT).show();
            }else{
                Intent i = new Intent(LoginActivity.this, HomeActivity.class);
                startActivity(i);
                finish();

                Toast.makeText(getApplicationContext(),"Successful Login",Toast.LENGTH_SHORT).show();
            }
下面是
datahelper
类的代码部分。该表的名称为
user

 public boolean emailpasswd(String email, String password){
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery("Select * from user where email=? and password = ?", new
            String[]{email, password});
    if (cursor.getCount()>0){
        return false;
    }else {
        return true;
    }
  }
}
我在SQLite数据库的帮助下创建了一个应用程序。整个应用程序工作正常,但只要我尝试登录,应用程序就无法检查数据库中的电子邮件和密码,这就是为什么无论我输入什么,我都能成功登录。请检查代码并引导我完成。

您的代码:

if (cursor.getCount()>0){
    return false;
}else {
    return true;
}
因此,如果用户存在,则返回
false
!!! 换一种方式:

if (cursor.getCount()>0){
    return true;
}else {
    return false;
}

并在末尾添加一个
db.close()

请不要试图发布代码的图像,这样做可能会导致很多人投反对票。编辑您的问题,然后将代码复制并粘贴为。发布实际代码使其他人更容易测试代码,从而更容易提供答案。如果代码粘贴为图像,许多人会忽略这个问题,其他人可能会投票反对这个问题,其他人可能会投票结束这个问题。你说的“我在……的帮助下创建了一个”是什么意思?例如,缺少一个单词吗?通过编辑你的问题,而不是在这里的评论。嘿,谢谢你的建议,但我仍然坚持唯一的区别,现在我收到的电子邮件和密码不正确的吐司,而不是登录成功的代码。P