Я не уверен насчет потока вашего приложения, но из того, что я понимаю: Пользователи могут использовать ваше приложение без проверки подлинности. Однако вы хотите, чтобы неаутентифицированные пользователи имели доступ только к ограниченному количеству функций .
. Вы упомянули в комментариях, что пользователи должны проверять свой номер телефона при каждой новой установке приложения, независимо от предыдущихиспользовать. Таким образом, вы можете использовать SharedPreferences в своих интересах, например:
- Каждый раз, когда пользователь проверяет свой номер телефона, сохраняйте логическое значение (true) в SharedPreferences.
- Когда пользовательхочет получить доступ к функции, которая доступна только для аутентифицированных пользователей, проверьте сохраненное логическое значение SharedPreferences, чтобы проверить, аутентифицирован ли пользователь или нет.
- Когда пользователь выходит из системы, не забудьте удалить / сбросить логическое значение SharedPreferences.
Чтобы сохранить логическое значение в SharedPreferences, вы можете сделать что-то вроде этого:
// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);
// create an editor object from your sharedpreferences object
SharedPreferences.Editor editor = sharedPreferences.edit();
// save your boolean value to a reference called "status"
editor.putBoolean("status", true);
// save changes
editor.apply();
Чтобы извлечь сохраненное логическое значение, вы можете сделать что-то вроде этого:
// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);
// get saved boolean value, default value should be false
boolean ab = sharedPreferences.getBoolean("status", false);
Чтобы удалить /сбросьте логическое значение SharedPreferences, просто установите логическое значение в false, как показано ниже:
// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);
// create an editor object from your sharedpreferences object
SharedPreferences.Editor editor = sharedPreferences.edit();
// save your boolean value to a reference called "status"
editor.putBoolean("status", false);
// save changes
editor.apply();
Надеюсь, это поможет. Веселого кодирования!