Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在ANDROID中通过EMAIL_ADDRESS检索SQLITE DB中的用户名和密码大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要获取用户名和密码…我正在我的应用程序中进行密码恢复,所以这是我的DB代码

public String getEmailAddr() throws sqlException {
    cursor mcursor = db.rawQuery(
        "SELECT Username,passwords FROM " + 
        USERS_TABLE + " WHERE EmailNO=?",null);

    if (mcursor != null) {           

        if(mcursor.getCount() > 0 {
            //return obj1.getpassword();
        }
    }

    //return false;
    return obj1.getpassword();
}

用户输入电子邮件地址时,必须首先检查是否存在,并使用我的活动代码发送电子邮件返回密码和用户名

public void onClick(View v) {
    String EmailAddress = txtEmailAddress.getText().toString();
    try {
        if(EmailAddress.length() > 0) {
            DBAdapter  dbUser = new DBAdapter (Recoverpassword.this);
            dbUser.open();

            if(dbUser.getEmailAddress(EmailAddress)) {
                Toast.makeText(Recoverpassword.this,"Email successfully ",Toast.LENGTH_LONG).show();
                    Toast.makeText String to = 
                        txtEmailAddress.getText().toString();
                    //String subject = EmailAddress.getText().toString();
                    // String message = EmailAddress.getText().toString();
                    Intent email = new Intent(Intent.ACTION_SEND);
                    email.putExtra(Intent.EXTRA_EMAIL,new String[]{ to});
                    email.putExtra(Intent.EXTRA_SUBjeCT,"password Recovery");
                    email.putExtra(Intent.EXTRA_TEXT,dbUser.getEmailAddr());
                    //need this to prompts email client only 
                    email.setType("message/rfc822");
                    startActivity(Intent.createChooser(email,"gmail :"));                 
                }

                else {
                    Toast.makeText(Recoverpassword.this,"Invalid Email",Toast.LENGTH_LONG).show();
                    txtEmailAddress.setText("");
                }

                dbUser.close();
            }
        }

        catch(Exception E) {
            Toast.makeText(Recoverpassword.
            this,e.getmessage(),Toast.LENGTH_LONG).show();
        }

        Please Help me to check what is wrong...but there is no error but it cant return 
        username and password to the email sent

解决方法

我对你的代码感到困惑,但是当你想从cursor获取数据时

String[] whereArgs = new String[<data>];
    cursor mcursor = db.rawQuery("SELECT Username,passwords FROM " + USERS_TABLE + " WHERE EmailNO = ?",whereArgs);
    mcursor.moToFirst();

    if(mcursor.getCount() > 0} {
       String userName = mcursor.getString(0);
       String password = mcursor.getString(1);

    }

您必须使用提供从数据库返回数据的cursor实例的getter.

编辑:

我没有注意到你使用whereArgs所以当你使用WHERE子句时,你必须具体whereArgs as String []包含将被替换的数据而不是?焦炭.

您可以使用Fo关闭数据库

@Override
protected void onDestroy() {
    super.onDestroy();
    if (yourDatabase != null) {
        yourDatabase.close();
    }
}

或者在打开数据库的每个工作之后,你应该关闭()db.

大佬总结

以上是大佬教程为你收集整理的在ANDROID中通过EMAIL_ADDRESS检索SQLITE DB中的用户名和密码全部内容,希望文章能够帮你解决在ANDROID中通过EMAIL_ADDRESS检索SQLITE DB中的用户名和密码所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。