shared preference clear işlemi
Merhabalar öncelikle androidde yeni olduğumu belirtmek istiyorum.
Bir Login Arayüzü yaptım. Kullanıcı giriş yaparken beni hatırlaya bastığında boolean türünde giris_yaptimi değişkenini true yaparak shared preference ile kaydediyorum. Uygulamayı her açtığında da sorulatıyorum eğer giris_yaptimi=true ise direk olarak atla bu sayfayı ikinci sayfaya geç şeklinde basit bi remember me işlemi aslında. İkinci sayfada da Logut butonu altına kayıtlı olan shared preferanceyi clear yaptığımda giris_yaptimi booleanı false olmuyor. İstediğim şu ki logout a basınca hafızadaki beni hatırla silinsin tekrar login ekrarnına dönsün. Ama bence 2.ci sayfada log out yapınca bir türlü login ekrarnına dönüş sağlayamıyorum. biraz uzun yazmış olabilirim :) şimdiden yardımlarınız için teşekkür ederim.
Main Activiy
------------------------
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
///////////// LOGİN EKRANI //////////////////////////
private EditText editTextUsername;
private EditText editTextPassword;
private Button buttonLogin;
Button buttonregister;
private String username;
private String password;
CheckBox benihatirla;
SharedPreferences share;
SharedPreferences.Editor edit;
public Boolean giris_yaptimi;
TextView sonuc,sonuc2;
String sonuc_nedir;
@Override
protected void onCreate(Bundle savedInstanceState) {
// giris_yaptimi=false;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextUsername = (EditText) findViewById(R.id.editTextUsername);
editTextPassword = (EditText) findViewById(R.id.editTextPassword);
buttonLogin = (Button) findViewById(R.id.buttonLogin);
buttonregister=(Button)findViewById(R.id.btn_kayit_ol);
benihatirla=(CheckBox)findViewById(R.id.chk_hatirla);
sonuc=(TextView)findViewById(R.id.textView);
sonuc2=(TextView)findViewById(R.id.textView2);
buttonLogin.setOnClickListener(this);
if (giris_yaptimi=true){
sonuc2.setText("true");
Intent i = new Intent(MainActivity.this, Kayitformu.class);
startActivity(i);
}
buttonregister.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(MainActivity.this, Kayitformu.class);
startActivity(i);
// intent.putExtra(KEY_USERNAME, username);
}
});
}
private void userLogin() {
username = editTextUsername.getText().toString().trim();
password = editTextPassword.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, LOGIN_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
String durum="success";
if(response.trim().equals(durum)){
openProfile();
}
else{
//Toast.makeText(getApplicationContext(),"Beni Hatırla Dedi",Toast.LENGTH_SHORT).show();
Toast.makeText(MainActivity.this,response,Toast.LENGTH_LONG).show();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this,error.toString(),Toast.LENGTH_LONG ).show();
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> map = new HashMap<String,String>();
map.put(KEY_USERNAME,username);
map.put(KEY_PASSWORD,password);
return map;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
private void openProfile(){
//giris_yaptimi=true;
//sonuc.setText(Boolean.toString(giris_yaptimi));
/// BURDA GÖNDERİYORUMM
if (benihatirla.isChecked()){
giris_yaptimi=true;
share=getSharedPreferences("girdi",MODE_PRIVATE);
edit=share.edit();
edit.putBoolean("hatirla",giris_yaptimi);
edit.commit();
Toast.makeText(getApplicationContext(),"Giriş Başarılı Beni Hatırla",Toast.LENGTH_SHORT).show();
//
Intent intent = new Intent(this, Kayitformu.class);
startActivity(intent);
}
else{
giris_yaptimi=false;
share=getSharedPreferences("girdi",MODE_PRIVATE);
edit=share.edit();
edit.putBoolean("hatirla",giris_yaptimi);
edit.commit();
Toast.makeText(getApplicationContext(),"Giriş Başarılı Normal",Toast.LENGTH_SHORT).show();
//
Intent intent = new Intent(this, Kayitformu.class);
startActivity(intent);
}
}
@Override
public void onClick(View v) {
userLogin();
}
}
// LOGOUT EKRANII //
public class Kayitformu extends AppCompatActivity {
TextView sonuc;
public Boolean giris_yaptimi2;
Button cikis;
SharedPreferences share2;
SharedPreferences.Editor edit2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_kayitformu);
sonuc = (TextView) findViewById(R.id.textView);
cikis = (Button) findViewById(R.id.cikis_yap);
share2 = getSharedPreferences("girdi", MODE_PRIVATE);
edit2 = share2.edit();
giris_yaptimi2 = share2.getBoolean("hatirla", Boolean.parseBoolean("yok"));
sonuc.setText(Boolean.toString(giris_yaptimi2));
// LOGOUT BUTONU
cikis.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edit2.clear();
edit2.commit();
Intent intent = new Intent(Kayitformu.this, MainActivity.class);
startActivity(intent);
//Toast.makeText(getApplicationContext(), "Silindi", Toast.LENGTH_SHORT).show();
}
});
//noldu=true;
//sonuc.setText(Boolean.toString(noldu));
//Toast.makeText(getApplicationContext(),"BAŞARILI",Toast.LENGTH_SHORT).show();
}
}