Как сохранить проект всегда открытым, используя страницу входа на Android / Eclipse

1

У меня есть одна страница входа в проект для проекта "x". Моя потребность в том, что сначала я вступил в проект, указав правильные значения на странице входа в проект. Проект всегда хочет войти в систему, когда я попытайтесь открыть проект. Как достичь этой концепции?

Спасибо за ваше драгоценное время!..

  • 0
    Я думаю, что Android предоставляет эту функцию по умолчанию. И если вы все еще хотите не делать ошибок, вы можете использовать SharedPreferences.
Теги:
login

2 ответа

1
Лучший ответ

Многие приложения могут обеспечить способ захвата пользовательских настроек в настройках конкретного приложения или активности. Для поддержки этого Android предлагает простой набор API.

Предпочтения - это, как правило, пары значений имени. Они могут храниться как "Общие предпочтения" в различных действиях в приложении (обратите внимание, что в настоящее время они не могут быть разделены между процессами). Или это может быть что-то, что необходимо сохранить для конкретной деятельности.

Shared Preferences: The shared preferences can be used by all the components (activities, services etc) off the applications.

Activity handled preferences: These preferences can only be used with in the activity and can not be used by other components of the application.

Общие настройки:

Общие настройки управляются с помощью метода getSharedPreferences класса Context. Настройки сохраняются в файле по умолчанию (1) или вы можете указать имя файла (2), которое будет использоваться для ссылки на настройки.

(1) Вот как вы получаете экземпляр, когда указываете имя файла

 public static final String PREF_FILE_NAME = "PrefFile";
 SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

MODE_PRIVATE - это режим работы для настроек. Это режим по умолчанию и означает, что к созданному файлу будет обращаться только вызывающее приложение. Другие поддерживаемые два режима: MODE_WORLD_READABLE и MODE_WORLD_WRITEABLE. В MODE_WORLD_READABLE другое приложение может читать созданный файл, но не может его изменять. В случае MODE_WORLD_WRITEABLE у других приложений также есть права на запись для созданного файла.

(2) Рекомендуемый способ - использовать по умолчанию режим без указания имени файла:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

Наконец, как только у вас есть экземпляр предпочтений, вот как вы можете получить сохраненные значения из настроек:

 int storedPreference = preferences.getInt("storedInt", 0);

Для хранения значений в файле предпочтений должен использоваться объект SharedPreference.Editor. Редактор - это вложенный интерфейс класса SharedPreference.

SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Редактор также поддерживает такие методы, как remove() и clear(), чтобы удалить значение предпочтения из файла.

Предпочтения деятельности:

Общие предпочтения могут использоваться другими компонентами приложения. Но если вам не нужно делиться предпочтениями с другими компонентами и вы хотите, чтобы у вас были личные предпочтения. Вы можете сделать это с помощью метода getPreferences() активности. Метод getPreference использует метод getSharedPreferences() с именем класса активности для имени файла предпочтения.

Ниже приведен код для получения настроек:

SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt("storedInt", 0);

Код для хранения значений также такой же, как в случае общих настроек.

SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Вы также можете использовать другие методы, такие как сохранение состояния активности в базе данных. Примечание. Android также содержит пакет под названием android.preference. Пакет определяет классы для реализации пользовательского интерфейса приложений.

Чтобы увидеть еще несколько примеров, зайдите на сайт разработчиков Android Data Storage на сайте разработчиков.

Для получения дополнительной информации, проверьте эту ссылку:

Постоянное сохранение данных в android

0

Всякий раз, когда вы входите в систему, пользователь вводит пользователя в файл предпочтений. Затем в вашем основном действии дайте оценку, есть ли у вас значение для этого предпочтения или нет. Если присутствует, перейдите на целевую страницу. В противном случае отобразите страницу входа.

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        getLandingPage();
    }

    private void getLandingPage() {
        if (isLoggedIn()) {
            //goto login page
        } else {
            //goto landing page
        }
    }

    /**
     * Checks whether preference contains any value
     * 
     * @return
     */
    private boolean isLoggedIn() {
        return ProjectPreferences.getUserName() == ProjectPreferences.NULL_STRING
                ? true
                : false;
    }
}

Также не забудьте указать имя пользователя во время входа.

  • 0
    не могли бы вы прислать мне несколько образцов?
  • 0
    Вероятно, недостаточно проверить основной вид деятельности, поскольку вы можете вернуться другим способом.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню