Есть MainActivity с логин формой, кнопка с таким кодом и переходом в следующее окно.
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor ed = sharedPreferences.edit();
ed.putString("SAVED_TOKEN", token);
ed.putBoolean("IS_AUTHORIZED", true);
ed.apply();
И идет переход в User_Main в манифесте указал тут
android:noHistory="true"
и в User_Mainесть кнопка с логаутом с возвратом в предыдущее, MainActivity
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor ed = sharedPreferences.edit();
ed.putBoolean("IS_AUTHORIZED", false);
ed.apply();
Intent intent_logout=new Intent(User_Main.this,MainActivity.class);
startActivity(intent_logout);
в OnCreate в MainActivity идет проверка на "IS_AUTHORIZED"
SharedPreferences sharedPreferences =getPreferences(Context.MODE_PRIVATE);
boolean isAuthodized = sharedPreferences.getBoolean("IS_AUTHORIZED", false);
if (isAuthodized){
Intent intent=new Intent(MainActivity.this,User_Main.class);
startActivity(intent);
}
При логауте почему то остаюсь на месте, и окна не меняются и проблема в OnCreate блоке видимо. А задача простая, если юзер залогинился то после сворачивания и открытия- открывается User_Main, если разлогинился то MainActivity
Делаю это в первый раз, не могу догнать как правильно реализовать.
getPreferences() создает файл настроек, доступный только в пределах одной активити. То есть, в каждой активити у вас самостятельный файл с собственными значениями, соответственно то, что вы записываете в первой активити, никак не попадает во вторую. Для доступа к значениям настроек в пределах всего приложения, а не одной активити, используйте getSharedPreferences().
Подробнее о разнице файлов настроек.
Продвижение своими сайтами как стратегия роста и независимости