Android: использование SharedPreferences в библиотеке - PullRequest
6 голосов
/ 26 октября 2010

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

Это сокращенная версия моей библиотеки:

package com.android.foobar;

import android.content.SharedPreferences;
import android.preference.PreferenceManager;

public class Lib {
    int now;

    public Lib() {
        SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
        now = settings.getInt("now", 435);
    }

    public int foo(){
        return now;
    }
}

Я искал ответ и экспериментировал, но не могу найти действительный контекст для передачи getDefaultSharedPreferences (). Есть идеи?

1 Ответ

3 голосов
/ 26 октября 2010

Самый простой способ - включить контекст в качестве параметра вашего конструктора Lib и передать контекст приложения из точки, в которой создан Lib.

Если вы ищете статический способ, как это сделать, посмотрите на это: Доступ к SharedPreferences через статические методы

Но ИМХО первое решение будет лучшим.

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