2010-10-26 14 views
6

मैंने एक लाइब्रेरी बनाई है जिसका उपयोग मैं अपने ऐप में करता हूं। मैं इसे साझा प्राथमिकताओं में संग्रहीत कुछ सेटिंग्स तक पहुंच बनाना चाहता हूं।एंड्रॉइड: लाइब्रेरी में साझा किए गए संदर्भों का उपयोग

यह मेरा पुस्तकालय का एक छोटा संस्करण है:

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 को पारित करने के लिए नहीं मिल सकता है()। कोई विचार?

उत्तर

3

सबसे आसान तरीका संदर्भ को अपने लिब कन्स्ट्रक्टर के पैरामीटर के रूप में शामिल करना होगा और उस बिंदु से एप्लिकेशन संदर्भ को पास करना होगा जहां आपका लिब बनाया गया है।

आप कैसे यह इस पर एक नजर है करने के लिए की एक स्थिर रास्ता खोजते हैं: Accessing SharedPreferences through static methods

लेकिन IMHO पहला समाधान सबसे अच्छा होगा।

संबंधित मुद्दे