nullpointerexception - Android: ComponentInfo: java null pointer exception after returning to App -
my app works without problem until close app , homecoming after more 15 min aprox crash, if homecoming app after 5 min seems right. can't find problem please help!!!
logcat
02-06 20:39:43.534: e/androidruntime(1851): fatal exception: main 02-06 20:39:43.534: e/androidruntime(1851): java.lang.runtimeexception: unable start activity componentinfo{com.raigo.itivamin/com.raigo.itivamin.bartabs}: java.lang.runtimeexception: unable start activity componentinfo{com.raigo.itivamin/com.raigo.itivamin.objetivosactivity}: java.lang.nullpointerexception 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.performlaunchactivity(activitythread.java:1967) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.handlelaunchactivity(activitythread.java:1992) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.access$600(activitythread.java:127) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread$h.handlemessage(activitythread.java:1158) 02-06 20:39:43.534: e/androidruntime(1851): @ android.os.handler.dispatchmessage(handler.java:99) 02-06 20:39:43.534: e/androidruntime(1851): @ android.os.looper.loop(looper.java:210) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.main(activitythread.java:4441) 02-06 20:39:43.534: e/androidruntime(1851): @ java.lang.reflect.method.invokenative(native method) 02-06 20:39:43.534: e/androidruntime(1851): @ java.lang.reflect.method.invoke(method.java:511) 02-06 20:39:43.534: e/androidruntime(1851): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:823) 02-06 20:39:43.534: e/androidruntime(1851): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:590) 02-06 20:39:43.534: e/androidruntime(1851): @ dalvik.system.nativestart.main(native method) 02-06 20:39:43.534: e/androidruntime(1851): caused by: java.lang.runtimeexception: unable start activity componentinfo{com.raigo.itivamin/com.raigo.itivamin.objetivosactivity}: java.lang.nullpointerexception 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.performlaunchactivity(activitythread.java:1967) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.startactivitynow(activitythread.java:1808) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.localactivitymanager.movetostate(localactivitymanager.java:135) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.localactivitymanager.startactivity(localactivitymanager.java:347) 02-06 20:39:43.534: e/androidruntime(1851): @ android.widget.tabhost$intentcontentstrategy.getcontentview(tabhost.java:737) 02-06 20:39:43.534: e/androidruntime(1851): @ android.widget.tabhost.setcurrenttab(tabhost.java:401) 02-06 20:39:43.534: e/androidruntime(1851): @ android.widget.tabhost.addtab(tabhost.java:240) 02-06 20:39:43.534: e/androidruntime(1851): @ com.raigo.itivamin.bartabs.addtab(bartabs.java:65) 02-06 20:39:43.534: e/androidruntime(1851): @ com.raigo.itivamin.bartabs.settabs(bartabs.java:37) 02-06 20:39:43.534: e/androidruntime(1851): @ com.raigo.itivamin.bartabs.oncreate(bartabs.java:29) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activity.performcreate(activity.java:4465) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1049) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.performlaunchactivity(activitythread.java:1931) 02-06 20:39:43.534: e/androidruntime(1851): ... 11 more 02-06 20:39:43.534: e/androidruntime(1851): caused by: java.lang.nullpointerexception 02-06 20:39:43.534: e/androidruntime(1851): @ com.raigo.itivamin.objetivosactivity.oncreate(objetivosactivity.java:25) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activity.performcreate(activity.java:4465) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1049) 02-06 20:39:43.534: e/androidruntime(1851): @ android.app.activitythread.performlaunchactivity(activitythread.java:1931) 02-06 20:39:43.534: e/androidruntime(1851): ... 23 more androidmanifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.raigo.itivamin" android:versioncode="10" android:versionname="1.1" > <uses-sdk android:minsdkversion="11" android:targetsdkversion="17" /> <application android:name="com.raigo.itivamin.itivaapp" android:allowbackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/app_theme" > <activity android:name=".ingresodatosactivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name="bartabs" android:configchanges="orientation|screensize"></activity> <activity android:name=".objetivosactivity" android:configchanges="orientation|screensize"></activity> <activity android:name=".bombaactivity" android:configchanges="orientation|screensize"></activity> <activity android:name=".opioideactivity" android:theme="@android:style/theme.dialog"></activity> <activity android:name=".hipnoticoactivity" android:theme="@android:style/theme.dialog"></activity> <activity android:name="org.achartengine.graphicalactivity" /> <activity android:name=".graficaactivity" android:configchanges="orientation|screensize"></activity> <activity android:name=".simuladoractivity" android:configchanges="orientation|screensize"></activity> <activity android:name=".ayudaactivity" android:configchanges="orientation|screensize"></activity> <service android:name=".someservice1"></service> </application> </manifest> bartabs.java
package com.raigo.itivamin; import android.app.tabactivity; import android.content.intent; import android.content.pm.activityinfo; import android.os.bundle; import android.view.layoutinflater; import android.view.view; import android.widget.imageview; import android.widget.tabhost; import android.widget.textview; /** * @author adil soomro * */ @suppresswarnings("deprecation") public class bartabs extends tabactivity { /** called when activity first created. */ //boolean simulador =false; public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); this.setrequestedorientation(activityinfo.screen_orientation_portrait); setcontentview(r.layout.main); //bundle extras = getintent().getextras(); //simulador= extras.getboolean("simulador"); settabs() ; } private void settabs() { if (((itivaapp)getapplication()).simulador==false){ addtab(getstring(r.string.target), r.drawable.tab_objetivos, objetivosactivity.class); addtab(getstring(r.string.pump), r.drawable.tab_bomba, bombaactivity.class); addtab2(getstring(r.string.pk_pd), r.drawable.tab_chart,graficaactivity.class); addtab(getstring(r.string.help), r.drawable.tab_help, ayudaactivity.class); } else{ addtab(getstring(r.string.scheme), r.drawable.tab_bomba, simuladoractivity.class); addtab2(getstring(r.string.pk_pd), r.drawable.tab_chart,graficaactivity.class); addtab(getstring(r.string.help), r.drawable.tab_help, ayudaactivity.class); } } private void addtab(string labelid, int drawableid, class<?> c) { tabhost tabhost = gettabhost(); intent intent = new intent(this, c); tabhost.tabspec spec = tabhost.newtabspec("tab" + labelid); view tabindicator = layoutinflater.from(this).inflate(r.layout.tab_indicator, gettabwidget(), false); textview title = (textview) tabindicator.findviewbyid(r.id.title); title.settext(labelid); imageview icon = (imageview) tabindicator.findviewbyid(r.id.icon); icon.setimageresource(drawableid); spec.setindicator(tabindicator); spec.setcontent(intent); tabhost.addtab(spec); //tabhost.setontabchangedlistener(this); } private void addtab2(string labelid, int drawableid, class<?> c) { tabhost tabhost = gettabhost(); intent intent = new intent(this, c).addflags(intent.flag_activity_clear_top); tabhost.tabspec spec = tabhost.newtabspec("tab" + labelid); view tabindicator = layoutinflater.from(this).inflate(r.layout.tab_indicator, gettabwidget(), false); textview title = (textview) tabindicator.findviewbyid(r.id.title); title.settext(labelid); imageview icon = (imageview) tabindicator.findviewbyid(r.id.icon); icon.setimageresource(drawableid); spec.setindicator(tabindicator); spec.setcontent(intent); tabhost.addtab(spec); //tabhost.setontabchangedlistener(this); } //@override //public void ontabchanged(string tabid) { // if (tabid.equals("tabpk/pd")==true && (((itivaapp)getapplication()).cambio==true)){ // localactivitymanager manager = getlocalactivitymanager(); // manager.destroyactivity("tabpk/pd", true); // manager.startactivity("tabpk/pd", new intent(this, graficaactivity.class)); // } //} } objetivosactivity.java
package com.raigo.itivamin; import android.app.activity; import android.app.alertdialog; import android.content.context; import android.content.dialoginterface; import android.content.pm.activityinfo; import android.os.bundle; import android.view.layoutinflater; import android.view.view; import android.widget.button; import android.widget.edittext; import android.widget.numberpicker; import android.widget.numberpicker.onvaluechangelistener; import android.widget.toast; public class objetivosactivity extends activity implements onvaluechangelistener { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); this.setrequestedorientation(activityinfo.screen_orientation_portrait); if (((itivaapp)getapplication()).modelo2.equals("halogenado")==false){ setcontentview(r.layout.objetivospage_sep); } else { setcontentview(r.layout.objetivospage_bal); } //valores por defecto ((itivaapp)getapplication()).tinduccion=5; ((itivaapp)getapplication()).tcx=180; ((itivaapp)getapplication()).objetivo="efecto"; //((itivaapp)getapplication()).deltainfusion=15; ((itivaapp)getapplication()).cambio=true; final button btn_opt = (button)findviewbyid(r.id.button_optimizar); if (((itivaapp)getapplication()).mezclado==true){ btn_opt.setvisibility(view.visible); } else if (((itivaapp)getapplication()).modelo2.equals("halogenado")==false) { btn_opt.setvisibility(view.gone); } ///////// final button btn_ind = (button)findviewbyid(r.id.button_induccion); btn_ind.settext((int)((itivaapp)getapplication()).tinduccion+" "+getstring(r.string._min)); //se crean los objetivos del farmaco 1 final numberpicker np_ini1 = (numberpicker) findviewbyid(r.id.numberpicker_ini1); final numberpicker np_man1 = (numberpicker) findviewbyid(r.id.numberpicker_man1); final numberpicker np_sal1 = (numberpicker) findviewbyid(r.id.numberpicker_sal1); string[] nums = new string[120]; for(int i=1; i<nums.length+1; i++) nums[i-1] = double.tostring(i/10.0); np_ini1.setmaxvalue(nums.length-1); np_ini1.setminvalue(0); np_ini1.setdisplayedvalues(nums); np_ini1.setvalue((int) (((itivaapp)getapplication()).ini1*10-1)); np_ini1.setdescendantfocusability(numberpicker.focus_block_descendants); np_ini1.setonvaluechangedlistener(this); np_man1.setmaxvalue(nums.length-1); np_man1.setminvalue(0); np_man1.setdisplayedvalues(nums); np_man1.setvalue((int) (((itivaapp)getapplication()).man1*10-1)); np_man1.setdescendantfocusability(numberpicker.focus_block_descendants); np_man1.setonvaluechangedlistener(this); np_sal1.setmaxvalue(nums.length-1); np_sal1.setminvalue(0); np_sal1.setdisplayedvalues(nums); np_sal1.setvalue((int) (((itivaapp)getapplication()).sal1*10-1)); np_sal1.setdescendantfocusability(numberpicker.focus_block_descendants); np_sal1.setonvaluechangedlistener(this); if (((itivaapp)getapplication()).modelo2.equals("schnider") && ((itivaapp)getapplication()).mezclado==false){ //se crean los objetivos del farmaco 2 final numberpicker np_ini2 = (numberpicker) findviewbyid(r.id.numberpicker_ini2); final numberpicker np_man2 = (numberpicker) findviewbyid(r.id.numberpicker_man2); final numberpicker np_sal2 = (numberpicker) findviewbyid(r.id.numberpicker_sal2); string[] nums2 = new string[80]; for(int i=1; i<nums2.length+1; i++) nums2[i-1] = double.tostring(i/10.0); np_ini2.setmaxvalue(nums2.length-1); np_ini2.setminvalue(0); np_ini2.setdisplayedvalues(nums2); np_ini2.setvalue((int) (((itivaapp)getapplication()).ini2*10-1)); np_ini2.setdescendantfocusability(numberpicker.focus_block_descendants); np_ini2.setonvaluechangedlistener(this); np_man2.setmaxvalue(nums2.length-1); np_man2.setminvalue(0); np_man2.setdisplayedvalues(nums2); np_man2.setvalue((int) (((itivaapp)getapplication()).man2*10-1)); np_man2.setdescendantfocusability(numberpicker.focus_block_descendants); np_man2.setonvaluechangedlistener(this); np_sal2.setmaxvalue(nums2.length-1); np_sal2.setminvalue(0); np_sal2.setdisplayedvalues(nums2); np_sal2.setvalue((int) (((itivaapp)getapplication()).sal2*10-1)); np_sal2.setdescendantfocusability(numberpicker.focus_block_descendants); np_sal2.setonvaluechangedlistener(this); } else if (((itivaapp)getapplication()).mezclado==true){ //se crean los objetivos del farmaco 2 final numberpicker np_ini2 = (numberpicker) findviewbyid(r.id.numberpicker_ini2); final numberpicker np_man2 = (numberpicker) findviewbyid(r.id.numberpicker_man2); final numberpicker np_sal2 = (numberpicker) findviewbyid(r.id.numberpicker_sal2); string[] nums2 = new string[81]; for(int i=1; i<nums2.length; i++) nums2[i-1] = double.tostring(i/10.0); nums2[80] = "-"; np_ini2.setmaxvalue(nums2.length-1); np_ini2.setminvalue(0); np_ini2.setdisplayedvalues(nums2); np_ini2.setvalue(80); np_ini2.setdescendantfocusability(numberpicker.focus_block_descendants); np_ini2.setonvaluechangedlistener(this); np_man2.setmaxvalue(nums2.length-1); np_man2.setminvalue(0); np_man2.setdisplayedvalues(nums2); np_man2.setvalue(80); np_man2.setdescendantfocusability(numberpicker.focus_block_descendants); np_man2.setonvaluechangedlistener(this); np_sal2.setmaxvalue(nums2.length-1); np_sal2.setminvalue(0); np_sal2.setdisplayedvalues(nums2); np_sal2.setvalue(80); np_sal2.setdescendantfocusability(numberpicker.focus_block_descendants); np_sal2.setonvaluechangedlistener(this); } else if (((itivaapp)getapplication()).modelo2.equals("halogenado")){ numberpicker np_mac = (numberpicker) findviewbyid(r.id.numberpicker_mac); string[] nums2 = new string[30]; for(int i=1; i<nums2.length+1; i++) nums2[i-1] = double.tostring(i/10.0); np_mac.setmaxvalue(nums2.length-1); np_mac.setminvalue(0); np_mac.setdisplayedvalues(nums2); np_mac.setvalue(0); np_mac.setdescendantfocusability(numberpicker.focus_block_descendants); np_mac.setonvaluechangedlistener(this); } } @override protected void onresume() { super.onresume(); numberpicker np_ini1 = (numberpicker) findviewbyid(r.id.numberpicker_ini1); numberpicker np_man1 = (numberpicker) findviewbyid(r.id.numberpicker_man1); numberpicker np_sal1 = (numberpicker) findviewbyid(r.id.numberpicker_sal1); np_ini1.setvalue((int) (((itivaapp)getapplication()).ini1*10-1)); np_man1.setvalue((int) (((itivaapp)getapplication()).man1*10-1)); np_sal1.setvalue((int) (((itivaapp)getapplication()).sal1*10-1)); if (((itivaapp)getapplication()).modelo2.equals("halogenado")==false){ numberpicker np_ini2 = (numberpicker) findviewbyid(r.id.numberpicker_ini2); numberpicker np_man2 = (numberpicker) findviewbyid(r.id.numberpicker_man2); numberpicker np_sal2 = (numberpicker) findviewbyid(r.id.numberpicker_sal2); np_ini2.setvalue((int) (((itivaapp)getapplication()).ini2*10-1)); np_man2.setvalue((int) (((itivaapp)getapplication()).man2*10-1)); np_sal2.setvalue((int) (((itivaapp)getapplication()).sal2*10-1)); if (((itivaapp)getapplication()).mezclado==true){ if (((itivaapp)getapplication()).ini2==0 && ((itivaapp)getapplication()).man2==0){ np_ini2.setvalue(80); np_man2.setvalue(80); } else { np_ini2.setvalue((int) (((itivaapp)getapplication()).ini2*10-1)); np_man2.setvalue((int) (((itivaapp)getapplication()).man2*10-1)); } np_sal2.setvalue(80); } } } ..... caused by: java.lang.nullpointerexception @ com.raigo.itivamin.objetivosactivity.oncreate(objetivosactivity.java:25)
the error seems point line:
if (((itivaapp)getapplication()).modelo2.equals("halogenado")==false){ so either (itivaapp)getapplication() null or .modelo2 null. can test value null debugger or via logcat statements.
if modelo2 may or may not null can write status backwards:
if(!"halogenado".equals(((itivaapp)getapplication()).modelo2)){ // "!" means "!= true" must mean "false" boolean android nullpointerexception
No comments:
Post a Comment