2013-10-06 4 views
0

나는 사용자가 페이스 북이나 우리 자신의 mysql 데이터베이스를 통해 로그인하는 로그인/로그 아웃 시스템을 가지고있다.로그인/로그 아웃 시스템 개선

사용자가 성공적으로 저장되는 fullying에서의 로그인 할 때 :

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
SharedPreferences.Editor editor = settings.edit(); 
editor.putBoolean("loggedIn", true); 
editor.putString("email", EMAIL); 
editor.putString("password", PASSWORD); 
editor.putInt("USERID", Integer.parseInt((String) product.get("ProfileID"))); 
editor.commit(); 

을 그리고 나는 시작 사용자가 로그인하면 확인 페이지가 : 다음

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
boolean loggedin = settings.getBoolean("loggedIn", false); 
if (loggedin) { 
    Intent intent = new Intent(this, LoggedIn.class); 
    startActivity(intent); 
} else { 
    Intent intent = new Intent(this, LogIn.class); 
    startActivity(intent); 
} 

와 사용자가 로그인 out :

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
SharedPreferences.Editor editor = settings.edit(); 
editor.putBoolean("loggedIn", false); 
editor.putString("email", ""); 
editor.putString("password", ""); 
editor.commit(); 
db.clearLists(); 
db.clearProducts(); 
Intent intent = new Intent(v.getContext(), Splash.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); 
v.getContext().startActivity(intent); 

이것은 잘 작동하는 것처럼 보입니다. 즉, 사용자가 로그 아웃하여 로그인 페이지로 다시 전송됩니다. 모든 데이터가 앱에서 삭제되었습니다.

그러나 일부 사용자는 앱을 닫고 다시 방문하면 실제로 로그인 한 것으로보고하고 있습니다. 로그인을하거나 시스템을 개선하는 방법에 대한 의견이있는 사용자가 있는지 궁금해합니다. 그것을 개선하고이를 방지하십시오.

답변

0

코드가 괜찮아 보입니다. 하지만 sqlite db에 로그인을 전송할 수 있다고 가정합니다. db에 저장하고 db에서 로그인 정보를 검색하십시오.)

0

로그 아웃하는 동안 공유 환경 설정을 비우는 것이 좋으며 공유 환경 설정이 있는지 확인한 후 다른 방법으로 로그인 페이지로 리디렉션하는 것이 좋습니다.