如何在Android中通过电子邮件地址获取用户名和密码
我正在尝试通过电子邮件地址获取用户名和密码,并将其作为电子邮件[密码恢复]。。。。。 我可以通过电子邮件检查用户是否存在,但现在我需要通过他/她以前提供的电子邮件获取用户名和密码 这是我的DB_课程如何在Android中通过电子邮件地址获取用户名和密码,android,sqlite,Android,Sqlite,我正在尝试通过电子邮件地址获取用户名和密码,并将其作为电子邮件[密码恢复]。。。。。 我可以通过电子邮件检查用户是否存在,但现在我需要通过他/她以前提供的电子邮件获取用户名和密码 这是我的DB_课程 public boolean getEmail(String emailNo) throws SQLException //pass the EmailNo which you want in where clause { Cursor
public boolean getEmail(String emailNo) throws SQLException //pass the EmailNo which you want in where clause
{
Cursor mCursor = db.rawQuery("SELECT Username, Passwords FROM " + USERS_TABLE + " WHERE EmailNO='"+emailNo+"'",null);
if (mCursor != null) {
if(mCursor.getCount() > 0)
return true;
}
return false;
}
我的活动类用于检查用户存在和发送电子邮件。下面是
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();
String to = txtEmailAddress.getText().toString();
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to});
email.putExtra(Intent.EXTRA_SUBJECT, "Password Recovery");
if(dbUser.getEmail(EmailAddress)){
email.putExtra(Intent.EXTRA_TEXT,dbUser.getEmailAddr(obj.getusername(),obj.getpassword())) ;
}else{
Toast.makeText(RecoverPassword.this,"Email Not matching " ,Toast.LENGTH_LONG).show();
}
email.setType("message/rfc822");
startActivity(Intent.createChooser(email, "gmail :"));
}else{
Toast.makeText(RecoverPassword.this,"Invalid Email", Toast.LENGTH_LONG).show();
txtEmailAddress.setTex
您永远不能从数据库中恢复密码。如果您真的想恢复原始密码,那么您的安全性很低(希望您不要将密码存储为纯文本?) 我强烈建议生成一个新的,存储在数据库中并发送给用户
在他第一次使用新密码登录后,您应该强制他定义新密码。密码本身至少应该经过盐渍和哈希处理。有关该主题的更多信息,请搜索MD5和salt。这应该足够安全。您的问题是什么,调试您自己!在服务器端,您在这里所做的很多事情都会容易得多。看看django/python。我需要通过电子邮件地址检索用户名和密码,然后在数据库中查询键入的电子邮件地址。获取用户名,生成新密码,将其安全地存储在数据库中,创建电子邮件并最终发送。您在问题中编写的代码非常混乱,几乎不可读。一步一步地考虑我上面写的东西!安全很重要!