Note that there are some explanatory texts on larger screens.

plurals
  1. PONull pointer exception in SharedPreferences Android
    text
    copied!<p>This is my SharedPreference class : </p> <pre><code>public class MySharedPrefs { private static final String APP_SHARED_PREFS = "com.astroved.Horawatch"; private SharedPreferences appSharedPrefs; private Editor prefsEditor; public MySharedPrefs(Context context) { this.appSharedPrefs = context.getSharedPreferences(APP_SHARED_PREFS, Activity.MODE_PRIVATE); this.prefsEditor = appSharedPrefs.edit(); } public String getPrefsValue(String value) { return appSharedPrefs.getString(value, ""); } public void savePrefsValue(String key , String Value) { prefsEditor.putString(key, Value); prefsEditor.commit(); } public Boolean checkKey(String Key) { if(appSharedPrefs.contains(Key)) return true; else return false; } </code></pre> <p>}</p> <p>MyFunctionClass : </p> <pre><code>public class Functions_class extends Activity{ AstroVedTime tz,lat,lon; TimeZone tz1; protected MySharedPrefs appPrefs; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);{ appPrefs = new MySharedPrefs(Functions_class.this); } } public void user_informations(int myear,int mMonth, int mDay){ int year = myear,month = mMonth+1,day = mDay; Moment mn = new Moment(year,month,day,user_device_time()); //appPrefs = new MySharedPrefs(Functions_class.this); if(appPrefs.checkKey("City_name1")){ TimeZone.setDefault(TimeZone.getTimeZone(appPrefs.getPrefsValue("selected_time_zone"))); Log.v("LOG_TAG"+"here the error is : ", appPrefs.getPrefsValue("selected_lat")+""); Log.v("LOG_TAG", appPrefs.getPrefsValue("selected_longi")+""); tz1 = TimeZone.getDefault(); lat = new AstroVedTime(Double.parseDouble(appPrefs.getPrefsValue("selected_lat")));// Latitude lon = new AstroVedTime(Double.parseDouble(appPrefs.getPrefsValue("selected_longi")));// Longitude } </code></pre> <p>This is my <code>logcat</code> :</p> <pre><code> 08-10 14:07:14.947: E/AndroidRuntime(475): FATAL EXCEPTION: Thread-13 08-10 14:07:14.947: E/AndroidRuntime(475): java.lang.NullPointerException 08-10 14:07:14.947: E/AndroidRuntime(475): at com.astroved.horawatch.Functions_class.user_informations(Functions_class.java:46) 08-10 14:07:14.947: E/AndroidRuntime(475): at com.astroved.horawatch.HoraWatchActivity$13$1.run(HoraWatchActivity.java:1106) 08-10 14:07:16.628: E/WindowManager(475): Activity com.astroved.horawatch.HoraWatchActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@407f1950 that was originally added here 08-10 14:07:16.628: E/WindowManager(475): android.view.WindowLeaked: Activity com.astroved.horawatch.HoraWatchActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@407f1950 that was originally added here 08-10 14:07:16.628: E/WindowManager(475): at android.view.ViewRoot.&lt;init&gt;(ViewRoot.java:258) 08-10 14:07:16.628: E/WindowManager(475): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148) 08-10 14:07:16.628: E/WindowManager(475): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91) 08-10 14:07:16.628: E/WindowManager(475): at android.view.Window$LocalWindowManager.addView(Window.java:424) 08-10 14:07:16.628: E/WindowManager(475): at android.app.Dialog.show(Dialog.java:241) 08-10 14:07:16.628: E/WindowManager(475): at com.astroved.horawatch.HoraWatchActivity$13.onClick(HoraWatchActivity.java:1103) 08-10 14:07:16.628: E/WindowManager(475): at android.view.View.performClick(View.java:2485) 08-10 14:07:16.628: E/WindowManager(475): at android.view.View$PerformClick.run(View.java:9080) 08-10 14:07:16.628: E/WindowManager(475): at android.os.Handler.handleCallback(Handler.java:587) 08-10 14:07:16.628: E/WindowManager(475): at android.os.Handler.dispatchMessage(Handler.java:92) 08-10 14:07:16.628: E/WindowManager(475): at android.os.Looper.loop(Looper.java:123) 08-10 14:07:16.628: E/WindowManager(475): at android.app.ActivityThread.main(ActivityThread.java:3683) 08-10 14:07:16.628: E/WindowManager(475): at java.lang.reflect.Method.invokeNative(Native Method) 08-10 14:07:16.628: E/WindowManager(475): at java.lang.reflect.Method.invoke(Method.java:507) 08-10 14:07:16.628: E/WindowManager(475): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 08-10 14:07:16.628: E/WindowManager(475): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 08-10 14:07:16.628: E/WindowManager(475): at dalvik.system.NativeStart.main(Native Method) </code></pre> <p>I am getting the above error. I am doing some mistake in calling the <code>SharedPreference</code> values. I am not able to figure it out. Previously I get this error</p> <pre><code>at android.content.contextwrapper.getsharedpreferences contextwrapper.java 146 </code></pre> <p>I cleared the above error by calling <code>SharedPreferences</code> in <code>OnCreate</code>. How to clear the <code>Logcat</code> error shown above.Where I am wrong?</p> <p>I am calling the method in the MyFunctionClass during the onclick of my Another activity.Its shown below</p> <p>HoraWatchActivity :</p> <pre><code>public Functions_class func_cls = new Functions_class(); private OnClickListener show_panchang_page = new OnClickListener(){ public void onClick(View v) { pbarDialog = new ProgressDialog( HoraWatchActivity.this ); pbarDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); pbarDialog.setMessage("Loading Panchang..."); pbarDialog.show(); Thread t = new Thread(){ public void run(){ func_cls.user_informations(mYear, mMonth, mDay); Message myMessage=new Message(); Bundle resBundle = new Bundle(); resBundle.putString("status", "SUCCESS"); myMessage.obj=resBundle; handler.sendMessage(myMessage); } }; t.start(); } }; </code></pre> <p>Quicker response will helps me a Lot.Thanks.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload