Помнить пользователь и пароль

Привет у меня login и checkbox есть и я хочу использовать это для того, чтобы мне вспомнился пользователь и пароль, как он мог бы делать это?

Здесь я оставляю login activity:

public class LoginActivity extends AppCompatActivity {

EditText email, password;
private Button sign_in_register;
private RequestQueue requestQueue;
private static final String URL = "";
private StringRequest request;
public CheckBox ch;
public static final String MY_PREFS_NAME = "user_pass_pref";


@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);


    email = (EditText) findViewById(R.id.editText2);
    password = (EditText) findViewById(R.id.editText);
    sign_in_register = (Button) findViewById(R.id.button);
    ch = (CheckBox)findViewById(R.id.checkBox);

    if(ch.isChecked())
    {
        SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
        editor.putString("username", email.getText().toString());
        editor.putString("password1", password.getText().toString());
        editor.apply();
    }
    SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
    String restoredText = prefs.getString("username", null);
    if (restoredText != null) {
        String name = prefs.getString("username", "");
        String password1 = prefs.getString("password1", "");
        email.setText(name);
        password.setText(password1);
    }


    requestQueue = Volley.newRequestQueue(this);

    sign_in_register.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {


            request = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    try {
                        JSONObject jsonObject = new JSONObject(response);
                        if (jsonObject.names().get(0).equals("success")) {
                            Toast.makeText(getApplicationContext(), "SUCCESS " + jsonObject.getString("success"), Toast.LENGTH_SHORT).show();
                            startActivity(new Intent(getApplicationContext(), MainActivity.class));
                        } else {
                            Toast.makeText(getApplicationContext(), "Error" + jsonObject.getString("error"), Toast.LENGTH_SHORT).show();
                        }

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }


                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                }
            }) {
                @Override
                protected Map<String, String> getParams() throws AuthFailureError {
                    HashMap<String, String> hashMap = new HashMap<String, String>();
                    hashMap.put("email", email.getText().toString());
                    hashMap.put("password", password.getText().toString());

                    return hashMap;
                }
            };

            requestQueue.add(request);
        }
    });
}
}
0
задан 18.09.2017, 19:27
1 ответ

Используй SharedPreferences, я это реализовал asГ - и функционируй (Он это игнорирует VolleyDataSource). AquГ - это объясняет очень довольно в любом случае http://www.sgoliver.net/blog/preferencias-en-android-i-shared-preferences/

private Button iniciarSesion;
private EditText email, password;
private SwitchCompat switchCompat;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.signin);

    iniciarSesion = findViewById(R.id.btn_iniciarSesion);
    email = findViewById(R.id.txt_signin_email);
    password = findViewById(R.id.txt_signin_password);
    switchCompat = findViewById(R.id.switch_signin);

    final SharedPreferences prefs = getSharedPreferences("recordarmeWallet", Context.MODE_PRIVATE);
    String emailtext = prefs.getString("email", "");
    String pass = prefs.getString("password", "");
    boolean stateSwitch = prefs.getBoolean("stateSwitch", false);
    switchCompat.setChecked(stateSwitch);
    email.setText(emailtext);
    password.setText(pass);

    iniciarSesion.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


            if(switchCompat.isChecked()){

                SharedPreferences.Editor editor = prefs.edit();
                editor.putString("email", email.getText().toString());
                editor.putString("password", password.getText().toString());
                editor.putBoolean("stateSwitch", switchCompat.isChecked());
                editor.commit();

            } else {
                SharedPreferences.Editor editor = prefs.edit();
                editor.putString("email","");
                editor.putString("password", "");
                editor.putBoolean("stateSwitch", switchCompat.isChecked());
                editor.commit();
            }
            VolleyDataSource.getInstance(v.getContext() , 10).checkLoging( email.getText().toString(), password.getText().toString());
        }
    });

}
1
ответ дан 24.11.2019, 05:52

Теги

Похожие вопросы