Android: реализация общих настроек - PullRequest
0 голосов
/ 11 февраля 2012

Я создаю приложение, в котором мне нужно сохранить некоторую строку в общем предпочтении и показать ее на другой странице. Это означает, что я хочу сохранить имя пользователя в общем предпочтении в одном действии и хочу показать имя пользователя в другом деятельность. Любая помощь в этом отношении будет оценена. Спасибо

Ответы [ 3 ]

1 голос
/ 11 февраля 2012

Все, что вам нужно сделать, это (весь код является частью действия или Сервиса (т.е. контекста) Получить объект SharedPreferences:

static final String PREFS_NAME = "MyPrefs";
static final String USER_KEY = "user";

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);

Для хранения строки:

String username = ...
SharedPreferences.Editor editor = settings.edit();
editor.putString(USER_KEY, username);
editor.commit();

Читать:

String username = settings.getString(USER_KEY,null); // 2nd param is default value, used if prefs value is undefined

Вот более подробная информация: http://developer.android.com/guide/topics/data/data-storage.html

0 голосов
/ 06 ноября 2015

Возможно, вы захотите увидеть эту библиотеку.Это безопасный и простой в использовании.

https://prashantsolanki3.github.io/Secure-Pref-Manager/

Пример кода:

SecurePrefManager.with(this)
            .set("user_name")
            .value("LoremIpsum")
            .go();
0 голосов
/ 11 февраля 2012

Для этого сначала создайте один класс, в этом классе вам нужно написать все функции, относящиеся к get и set value в sharedpreference. Пожалуйста, посмотрите на этот код ниже.

public class SaveSharedPreference 
{
    static final String PREF_USER_NAME= "username";

    static SharedPreferences getSharedPreferences(Context ctx) {
        return PreferenceManager.getDefaultSharedPreferences(ctx);
    }

    public static void setUserName(Context ctx, String userName) 
    {
        Editor editor = getSharedPreferences(ctx).edit();
        editor.putBoolean(PREF_USER_NAME, userName);
        editor.commit();
    }

    public static boolean getUserName(Context ctx)
    {
        return getSharedPreferences(ctx).getString(PREF_USER_NAME, "");
    }
}

Теперь вы можете сначала установить значение имени пользователя из обычной деятельности и получить значение имени пользователя из любой деятельности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...