-1

I am developing an app in which I'm maintaining session using SharedPreference,So that when user will click on Logout Button then it will only go out off the app. But the problem is when user in their phone closing the recent applications, in our app it is again showing Login Screen. I don't know how to do that.Please help. Below is my code for mainActivity:

    SharedPreferences sharedpreferences;

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

    submit = (Button) findViewById(R.id.btn_login);

    ImageView i1 = (ImageView) findViewById(R.id.imgLogo);
    final ProgressBar progressBar = (ProgressBar) findViewById(R.id.pb);
    String checkBoxText = "I agree to all the ";
    final CheckBox checkBox = (CheckBox) findViewById(R.id.checkBox);
    sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
    checkBox.setText(Html.fromHtml(checkBoxText));
    checkBox.setMovementMethod(LinkMovementMethod.getInstance());

    submit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            final EditText e1 = (EditText) findViewById(R.id.input_email);
            final EditText p1 = (EditText) findViewById(R.id.input_password);
            final String e = e1.getText().toString();
            final String password = p1.getText().toString();

            SharedPreferences.Editor editor = sharedpreferences.edit();

            editor.putString(email, e);

            editor.commit();

and code for second activity:

        else if(position==3)
            {
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                builder.setMessage("Are you sure you want to Logout?")
                        .setCancelable(false)
                        .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int id) {

                                SharedPreferences sharedpreferences = getSharedPreferences(main.MyPREFERENCES, Context.MODE_PRIVATE);
                                SharedPreferences.Editor editor = sharedpreferences.edit();
                                editor.clear();
                                editor.commit();
                                Intent i = new Intent(getApplicationContext(), main.class);
                                // Closing all the Activities
                                i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

                                // Add new Flag to start new Activity
                                i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

                                // Staring Login Activity
                                getApplicationContext().startActivity(i);


                                finish();
                            }
                        })
                        .setNegativeButton("No", new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int id) {
                                dialog.cancel();
                            }
                        });
                AlertDialog alert = builder.create();
                alert.show();

            }
PriyankaChauhan
  • 953
  • 11
  • 26
Anusha Dandu
  • 41
  • 1
  • 8

1 Answers1

0

Here is simple solution for that.

user can never close you app from recent using this. He need to close it from the activity. Check that if work

<activity
android:name="youActivity"
android:theme="@android:style/Theme.NoDisplay"
android:autoRemoveFromRecents="true"/>

android:autoRemoveFromRecents="true" May help you

Shabbir Dhangot
  • 8,954
  • 10
  • 58
  • 80