2011-09-07 11 views
16

मैं अपने पृष्ठभूमि सेवा के भीतर SharedPreference तक पहुँचने के लिए मैं इस्तेमाल किया था PreferenceManager.getDefaultSharedPreferences() चाहते सेवा से साझा SharedPreference एक्सेस करने के लिए, लेकिन यह nullpoint अपवादमें एंड्रॉयड

धन्यवाद देता

+0

मुझे अपने कोड ..... दिखाने से मैं समझा सकता है जहां समस्या आ ... –

+1

हाँ मुझे नहीं लगता कि यदि आपके पास कभी भी इसे स्वीकार करने का ट्रैक रिकॉर्ड नहीं है तो बहुत से लोग मदद करने के लिए उत्सुक होंगे। –

उत्तर

31

आप इस तरह के संदर्भ का उपयोग करना होगा:

Context ctx = getApplicationContext(); 
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctx); 
5

इस प्रयास करें:

SharedPreference pref = getSharedPreferences(PrefName, 0); 
3

यदि आपके पास crea है टेड SharedPreferences की तरह:

private static final String PREFS_NAME = "UserData"; 
private static final String PREFS_VALUE1 = "value1"; 

तो इस का उपयोग करें:

SharedPreferences preferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE); 
value1 = preferences.getString(PREFS_VALUE1, "default_no"); 
+0

SharePreferences से मूल्यों को संग्रहीत करने और पुनर्प्राप्त करने के लिए सिंगलटन प्राथमिकता वर्ग बनाने के लिए इससे बेहतर विकल्प है। – Harpreet