마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

sharedPreferences 값을 입력하고 다시 사용하는 방법을 알고 싶습니다..ㅠㅠ

0 추천
                    try {
                        //converting response to json object
                        JSONObject obj = new JSONObject(s);
                        //if no error in response
                        if (!obj.getBoolean("error")) {
                            String username = obj.getString("username");


                            SharedPreferences.Editor editor = sharedPreferences.edit();
                            editor.putString(USERNAME, username);
                            editor.putString(EMAIL, email);
                            editor.putBoolean(STATUS, true);
                            editor.apply();

                            sharedPreferences = getSharedPreferences(MY_PREFERENCES, Context.MODE_PRIVATE);


                            if(USERNAME == "cha"){
                                finish();
                                Toast.makeText(getApplicationContext(), obj.getString("message"), Toast.LENGTH_LONG).show();
                                Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
                                startActivity(intent);
                            }else {
                                finish();
                                Toast.makeText(getApplicationContext(), obj.getString("message"), Toast.LENGTH_LONG).show();
                                Intent intent = new Intent(LoginActivity.this, SelectActivity.class);
                                startActivity(intent);
                            }


                        }
                        else{
                            //finish();
                            Toast.makeText(getApplicationContext(), obj.getString("message"), Toast.LENGTH_LONG).show();
                            //Intent intent = new Intent(LoginActivity.this, LoginActivity.class);
                           // startActivity(intent);
                        }

 

USERNAME의 값은 cha의 내용의 값을 가지고 있는 것을 확인 하였고,

USERNAME에 있는 값과 "cha"를 비교해서 RegisterActivity와 SelectActivity로 구분하여 가동 하려 하였으나 SharedPreferences의 사용법에 문제가 있는것 같습니다, 현재 문제는 if문에 else에만 걸려 SelectActivity만 열리는 문제 입니다 ..ㅠㅠ 선생님 답변 부탁드립니다...ㅜㅜ

차커 (120 포인트) 님이 2019년 5월 18일 질문

1개의 답변

0 추천
문자열 동등비교는 equals로 하셔야 합니다
익명사용자 님이 2019년 5월 18일 답변
!USERNAME.equals("cha") 로 변경하여 작성 해보았습니다.. 우선 문제는 해결하지 못했습니다 ㅠㅠ SharedPreferences를 통해 받은 USERNAME 값을 사용하려면 어떤 다른 방법으로 해야 하는것 아닐까요 ㅠㅠ?
String userName = sharedpreference.getstring(USERNAME)으로 저장한값을 가져오는 부분이 없는듯 하네요. 이렇게 가져온 값과 "cha"를 비교하시면 될거에요
...