ورود

View Full Version : خارج شدن برنامه در استفاده از SharedPreferences



roomezonline
شنبه 15 تیر 1392, 08:41 صبح
سلام به همه دوستان خوبم
من در استفاده از SharedPreferences به مشکل برخوردم برنامه force close میشه

کد ها رو میزارم :





package com.batterylevel;

import java.io.File;
import java.util.Timer;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.support.v4.app.NavUtils;

public class BattTools extends Activity {
public static final String PREFS_NAME = "MyPrefsFile";

private TextView contentTxt,txt_low,txt_highe;

private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent intent) {
// TODO Auto-generated method stub
int level = intent.getIntExtra("level", 0);
contentTxt.setText(String.valueOf(level) + "%");


if (contentTxt.getText().toString().equals("88%")) {
//lbl_bat.setText("Is Chargiing Low");
mp.start();

}

}
};






MediaPlayer mp=null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_batt_tools);



final EditText txt_low=(EditText)findViewById(R.id.txt_low);
final EditText txt_highe=(EditText)findViewById(R.id.txt_highe);
//txt_low.setText("20");
// mp = MediaPlayer.create(BattTools.this, R.raw.ben1);
contentTxt = (TextView) this.findViewById(R.id.lbl_bat_show);
this.registerReceiver(this.mBatInfoReceiver,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));



//save sett
// loadPrefs();


//click
Button cmd_save=(Button) findViewById(R.id.cmd_run);
cmd_save.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {
savePrefs("NAME", txt_low.getText().toString());
Toast.makeText(getApplicationContext(), "Save SuccessFully",
Toast.LENGTH_SHORT).show();

}
});


}



private void loadPrefs() {
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this );
String name = sp.getString("NAME", "");
txt_low.setText(name);
}



private void savePrefs(String key, String value) {
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this );
Editor edit = sp.edit();
edit.putString(key, value);
edit.commit();
}






}








اینم LogCat :


-04 23:06:14.254: D/AndroidRuntime(344): Shutting down VM
07-04 23:06:14.264: W/dalvikvm(344): threadid=1: thread exiting with uncaught exception (group=0x40015560)
07-04 23:06:14.294: E/AndroidRuntime(344): FATAL EXCEPTION: main
07-04 23:06:14.294: E/AndroidRuntime(344): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.batterylevel/com.batterylevel.BattTools}: java.lang.NullPointerException
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1622)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:1638)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread.access$1500(ActivityThr ead.java:117)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:928)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.os.Handler.dispatchMessage(Handler.java:99 )
07-04 23:06:14.294: E/AndroidRuntime(344): at android.os.Looper.loop(Looper.java:123)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread.main(ActivityThread.jav a:3647)
07-04 23:06:14.294: E/AndroidRuntime(344): at java.lang.reflect.Method.invokeNative(Native Method)
07-04 23:06:14.294: E/AndroidRuntime(344): at java.lang.reflect.Method.invoke(Method.java:507)
07-04 23:06:14.294: E/AndroidRuntime(344): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:839)
07-04 23:06:14.294: E/AndroidRuntime(344): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:597)
07-04 23:06:14.294: E/AndroidRuntime(344): at dalvik.system.NativeStart.main(Native Method)
07-04 23:06:14.294: E/AndroidRuntime(344): Caused by: java.lang.NullPointerException
07-04 23:06:14.294: E/AndroidRuntime(344): at com.batterylevel.BattTools.loadPrefs(BattTools.jav a:130)
07-04 23:06:14.294: E/AndroidRuntime(344): at com.batterylevel.BattTools.onCreate(BattTools.java :80)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1047)
07-04 23:06:14.294: E/AndroidRuntime(344): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1586)
07-04 23:06:14.294: E/AndroidRuntime(344): ... 11 more



پیشاپیش تشکر

NIMA_1981
شنبه 15 تیر 1392, 11:02 صبح
شما وقتی وارد برنامه میشه خطا میده یا وقتی روی دکمه کلیک میکنی

roomezonline
شنبه 15 تیر 1392, 12:55 عصر
شما وقتی وارد برنامه میشه خطا میده یا وقتی روی دکمه کلیک میکنی


مرسی حل شد اشکال از تعریغ تکست باکس ها بود