티스토리 뷰
/////////////@@@@@@@@@@HELP!!!!!!!!!!!!!!!!!!!?!!!!!/////////
자동로그인 부분
private void chkAutoLogin(){ // 기존에
String aabb = getData("name");
if(!aabb.equals("@#@#@@$@$")){
idEt.setText(getData("name"));
pwEt.setText(getData("pass"));
requestForLogin(getData("name"), getData("pass"));
}
}
private String getData(String key) {
String value = "";
SharedPreferences sharedPreferences = getSharedPreferences("login", MODE_PRIVATE);
value = sharedPreferences.getString(key, "@#@#@@$@$");
return value;
}
chkAutoLogin : 기존에 로그인 성공한 기록이 있는지 체크하는 부분
기존에 로그인을 성공했다면 성공한 id와 password를 가져오는 것.
String aabb는 getData를 풀어놓은 것.
즉. !aabb == !getData 다.
getData : 밑에 표시한 savePref 메소드의 SharedPreference를 가져온다.
savePref은 로그인 성공한 경우에 key, value값을 저장한다. 이 저장된 key, value값을 getData에서 활용.
String value가 없을 때,
Response.Listener<String> successLoginListener = new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject jsonObject = new JSONObject(response);
String result = jsonObject.getString("result");
if(result.equalsIgnoreCase("ok")){
Storage.token =jsonObject.getString("token");
savePref("name", idEt.getText().toString().trim()); //자동 로그인을 위해 아이디 저장
savePref("pass", pwEt.getText().toString().trim()); //자동 로그인을 위해 암호 저장
startActivity(new Intent(MainActivity.this, com.example.board.MyListActivity.class));
finish();
}else{
showToast("로그인 실패 바보야");
}
} catch (JSONException e) {
e.printStackTrace();
}
}
};
private void savePref(String key, String value){
SharedPreferences sharedPreferences = getSharedPreferences("login", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(key, value);
editor.commit();
}
댓글