Я разрабатываю приложение, в котором у меня есть вход в систему и вход в систему. Я делаю это, когда пользователь подписывается, его токен запоминается, и когда он снова нажимает на приложение, ему не нужно идти в Login. Но проблема заключается в том, что когда я выхожу из него, он переходит к активности LogIn, но когда он выходит из операции Login и когда он снова нажимает на приложение, он переходит непосредственно к главной операции, поэтому его токен не удаляется. Как это исправить? Вот моя LogIn активность:Почему мой токен не удаляется?
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
credentials = new Credentials();
login = (Button) findViewById(R.id.btn_login);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
username = (TextInputEditText)findViewById(R.id.username);
password = (TextInputEditText)findViewById(R.id.password);
String getUsername = username.getText().toString();
String getPassword = password.getText().toString();
if (getUsername.length()>0 && getPassword.length()>0) {
credentials.setUsername(getUsername);
credentials.setPassword(getPassword);
allOperations();
} else {
Toast.makeText(LoginActivity.this, R.string.empty_fields , Toast.LENGTH_LONG).show();
}
}
});
Вот мой Основная деятельность:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toolbar = (Toolbar) findViewById(R.id.tool_bar);
setSupportActionBar(toolbar);
SharedPreferences shf = getSharedPreferences("Token pref", MODE_PRIVATE);
final String strPref = shf.getString("token", null);
if(strPref == null) {
Intent intent = new Intent(MainActivity.this, LoginActivity.class);
startActivity(intent);
finish();
}
initializeInjector();
initialize();}
Вот моя логика для кнопки выхода (Он находится на фрагменте на Основной вид деятельности):
buttonOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences sharedPreferences = getActivity().getSharedPreferences("Token Prefs", Context.MODE_PRIVATE);
sharedPreferences.edit().remove("token").apply();
Intent intent = new Intent(context, LoginActivity.class);
startActivity(intent);
getActivity().finish();
}
});
И мой манифест:
<activity android:name=".view.activities.MainActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".view.activities.LoginActivity"
android:screenOrientation="portrait">
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
Не мог бы кто-нибудь мне помочь?
Диди лет проверка что вы получаете от SharedPreferences – DKV
Нет .. что я должен писать? – Atenica
Просто создайте Tost со строкой strPref – DKV