2015-06-10 31 views
0

我在android系统development..I是新希望插入Sqlite databasejson string和获取错误:安卓:数据可仍然得到错误NullPointerException异常

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1212, result=0, data=null} to activity : java.lang.NullPointerException. 

这里是我的代码:

DbAdapter.java

static final String DATABASE_FEEDBACK="CREATE TABLE IF NOT EXISTS "+" feedbackjson "+ 
     "("+"FeedbackId"+" integer primary key autoincrement, "+" JSON text, Fullname text, Email text, AdminId text);"; 


public void insertJSONFeedback(String json,String fullName,String email) 
{ 
    Log.i("Data Insert reached", "yes"); 

    ContentValues newValues = new ContentValues(); 
    Log.i("JSON STRING to be insert1",json); 
    newValues.put("JSON", json); 
    newValues.put("Fullname",fullName); 
    newValues.put("Email",email); 
    newValues.put("AdminId","1"); 
    db.insert("feedbackjson", null, newValues); 
    Toast.makeText(context, "Data Is Successfully Saved", Toast.LENGTH_LONG).show(); 
    Log.i("context", "Toast"); 

} 

MainActivity.java:

public class MainActivity extends ActionBarActivity { 
DbAdapter databaseadapter; 

    @Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    databaseadapter=new DbAdapter (this); 
    databaseadapter=databaseadapter.open(); 
} 


@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

    super.onActivityResult(requestCode, resultCode, data); 
    Log.i("Result Code", resultCode + ""); 


    fullName_et=(EditText) findViewById(R.id.name_et); 
    email_et=(EditText) findViewById(R.id.email_et); 

    String detailInformation = ""; 
    LinkedHashMap<String, String> userFields = new LinkedHashMap<String, String>(); 
    userFields = UtilityClass.EDIT_PROFILE_WITH_FIELD_NAME; 

    String fieldValueAndPrivacy = null;// = new 

    Gson gson = new Gson(); 
    String json = gson.toJson(userFields, LinkedHashMap.class); 

    Log.i("User Fields",json); 

    databaseadapter.insertJSONFeedback(json, fullName_et.getText().toString(), email_et.getText().toString()); 

    LinkedHashMap<String, ArrayList<String>> editProfileHashValues = new LinkedHashMap<String, ArrayList<String>>(); 

    Iterator fieldIterator = userFields.entrySet().iterator(); 
    while (fieldIterator.hasNext()) { 
     Map.Entry fieldPairs = (Map.Entry) fieldIterator.next(); 
     String fieldName = (String) fieldPairs.getKey(); 
     String fieldRunTimeValue = (String) fieldPairs.getValue(); 
     detailInformation += fieldName + " => " + fieldRunTimeValue 
       + "\n"; 
     Log.i("Detail Information", detailInformation); 
    } 
} 

这里我的JSON字符串:: {"Full Name":"gyt","Email Address":"ggfh","Contact Number":"987654568","Rate Quality of Food":"2.5","Service Quality":"3.0","Overall Experience":"3.0","Restaurant Branch":"Vadodara","Comments":"okh"}

,我在这行有错误java.lang.NullPointerException

databaseadapter.insertJSONFeedback(JSON, fullName_et.getText()的toString(),email_et.getText。 ()的ToString());

在此先感谢您。

+0

使用调试器找出最终值为空。 – Jens

+0

没有任何值是空的...我已经检查过...仍然geting错误nullpointerexception ..是否有任何其他原因?不使用数据库在活动结果或任何其他... – Ammy

+0

添加完整的LogCat – Jens

回答

1

,因为它似乎你的“databaseadapter”对象引用null..hence它抛出NullPointerException异常....

做一两件事,并检查它崩溃或不...添加这两个线databaseadapter =新DbAdapter(this); databaseadapter = databaseadapter.open();在onActivityResult()...

0

你错过了setContentView(int resId)onCreate()你的活动。

+0

我没有写在这里的整个代码...它已经在我的代码中可用,但不能写在这里整个页面代码..只有相关的数据被写入 – Ammy

+0

@Ammy把你的完整的Logcat。 –

相关问题