【问题标题】:how to make a password constant?如何使密码恒定?
【发布时间】:2014-05-27 22:15:24
【问题描述】:

我正在开发一个android app,其中有一个Login activity,并且问卷活动包含问题。所以现在我想让用户仅通过输入有助于阻止未经授权的唯一 ID 来访问该应用程序用户。我尝试使用代码,但是当我按下登录按钮时,即使密码与我提供的密码匹配,它也会弹出警报对话框。我想保留的密码是“VISTEON”。如果输入的密码是 rite,那么它应该打算进行下一个活动。

检查我的 java 代码并帮助我修改它。我们将不胜感激。 提前致谢。

这是我的java代码

public class Klogin extends Activity {
EditText editText1;
Button login;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_login);
    addButtonListener();
}
public void addButtonListener()
{
    Button login=(Button)findViewById(R.id.button1);
    login.setOnClickListener(new OnClickListener(){
        public void onClick(View v){
            if(validationSuccess()){
                 Intent intent = new Intent(Klogin.this, Login.class);
                 startActivity(intent);
             }
         }
     });


    }

private Boolean validationSuccess()
{
    EditText visteon = null;
    if(editText1==visteon)
    {
        alertDialog();
        return false;
    }

     return true;
 }
 private void alertDialog()
 {
     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Klogin.this);
        alertDialogBuilder.setMessage("Please ENTER the Correct password").setCancelable(false).setPositiveButton("OK", new DialogInterface.OnClickListener()
        {
                    public void onClick(DialogInterface dialog, int id) 
                    {
                        dialog.cancel();
                    }
                });

            AlertDialog alert = alertDialogBuilder.create();
            alert.show();

 }

【问题讨论】:

  • 1) 你还没有初始化editText1。 2) 使用getText()EditText 获取文本。 3) 你知道如何比较Java中的String吗?
  • 对不起,我不知道。我只是一个初学者。

标签: java android android-intent login passwords


【解决方案1】:

首先,您没有设置visteon 变量。这只需是一个字符串。

那么当你输入值时,你需要从editText1获取字符串,然后使用equals检查它是否正确。 == 运算符将检查对象的相等性,而不是它们的值。

【讨论】:

    【解决方案2】:

    你想要的是if(editText1.getText().toString().equals("VISTEON"))

    【讨论】:

      【解决方案3】:

      试试这个方法先初始化EditText edit_passwordlike

       EditText edit_password = (EditText)findViewById(R.id.edit_password);
      

      现在,创建validationSuccess(......) 喜欢

      private Boolean validationSuccess(String str)
      { 
      
      if(!str.equals("yourcorrectpassword"))
      {
          alertDialog();
          return false;
      }
      
       return true;
      }
      

      现在像这样调用这个函数

      login.setOnClickListener(new OnClickListener(){
          public void onClick(View v){
              if(validationSuccess(edit_password.getText.toString())){
                   Intent intent = new Intent(Klogin.this, Login.class);
                   startActivity(intent);
               }
           }
       });
      

      并确保您的 activity_main_login.xml 布局文件中有 EditText 和 id edit_password

      【讨论】:

        【解决方案4】:

        试试这个..

        public void addButtonListener()
        {
             Button login=(Button)findViewById(R.id.button1);
             editText1=(EditText)findViewById(R.id.editText1);
             login.setOnClickListener(new OnClickListener(){
                public void onClick(View v){
                    if(validationSuccess(editText1.getText().toString().trim())){
                         Intent intent = new Intent(Klogin.this, Login.class);
                         startActivity(intent);
                     }
                 }
             });
        }
        

        private Boolean validationSuccess(String value)
        {
            if(!value.equals("VISTEON"))
            {
                alertDialog();
                return false;
            }
        
             return true;
         }
        

        【讨论】:

          猜你喜欢
          • 2014-03-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-03-25
          • 1970-01-01
          • 2012-09-24
          • 1970-01-01
          相关资源
          最近更新 更多