android cursor - Add a row to Sqlite crashes if use getResources.getString() to add string value -


i'm trying add row sqlite. @ beggining adding row : (worked)

sqldb.execsql("insert family values (" + index_family + ",'" + r.string.f1_pavimentos + "','" + (r.string.f0_descripcionpropamsa + "','" + r.drawable.color_pavimento + "');"); 

but not idea, beacause saves de id of string, , want value. decided do:

sqldb.execsql("insert family values (" + index_family + ",'" + context.getresources().getstring(r.string.f1_pavimentos )+ "','" + context.getresources().getstring(r.string.f0_descripcionpropamsa )+ "','" + r.drawable.color_pavimento + "');"); 

adding getresources.getstring() crashes sending me error:

07-16 10:42:26.200    1746-1746/com.propamsa e/androidruntime﹕ fatal exception: main     process: com.propamsa, pid: 1746     java.lang.runtimeexception: unable start activity componentinfo{com.propamsa/com.propamsa.listas.familylist}: java.lang.nullpointerexception: attempt invoke virtual method 'android.content.res.resources android.content.context.getresources()' on null object reference             @ android.app.activitythread.performlaunchactivity(activitythread.java:2215)             @ android.app.activitythread.handlelaunchactivity(activitythread.java:2264)             @ android.app.activitythread.access$800(activitythread.java:144)             @ android.app.activitythread$h.handlemessage(activitythread.java:1205)             @ android.os.handler.dispatchmessage(handler.java:102)             @ android.os.looper.loop(looper.java:136)             @ android.app.activitythread.main(activitythread.java:5139)             @ java.lang.reflect.method.invoke(native method)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:796)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:612)      caused by: java.lang.nullpointerexception: attempt invoke virtual method 'android.content.res.resources android.content.context.getresources()' on null object reference             @ com.propamsa.basededatos.productdbhandler.insertinformation(productdbhandler.java:183)             @ com.propamsa.basededatos.productdbhandler.oncreate(productdbhandler.java:57)             @ android.database.sqlite.sqliteopenhelper.getdatabaselocked(sqliteopenhelper.java:252)             @ android.database.sqlite.sqliteopenhelper.getreadabledatabase(sqliteopenhelper.java:188)             @ com.propamsa.basededatos.productdbhandler.getallfamiliescursor(productdbhandler.java:109)             @ com.propamsa.listas.familylist.oncreate(familylist.java:39)             @ android.app.activity.performcreate(activity.java:5231)             @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1087)             @ android.app.activitythread.performlaunchactivity(activitythread.java:2169)             @ android.app.activitythread.handlelaunchactivity(activitythread.java:2264)             @ android.app.activitythread.access$800(activitythread.java:144)             @ android.app.activitythread$h.handlemessage(activitythread.java:1205)             @ android.os.handler.dispatchmessage(handler.java:102)             @ android.os.looper.loop(looper.java:136)             @ android.app.activitythread.main(activitythread.java:5139)             @ java.lang.reflect.method.invoke(native method)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:796)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:612) 

and can see caused nullpointer, string exist , spelled.

how can save string of it?

possibly, context null.
try using getapplicationcontext() instead of context


Comments