android - Contact Picker app crashes on phone but not on emulator -


so have example code android spinners, , modified little show contacts in 1 of spinners, , on emulator works fine, shows 5 entries have added in contacts, on phone crashes right on startup, , can't understand logcat, wrong? here,s code

// add items spinner dynamically     public void additemsonspinner2() {         spinner2 = (spinner) findviewbyid(r.id.spinner2);         list = new arraylist<string>();         getcontacts(null);         arrayadapter<string> dataadapter = new arrayadapter<string>(this, android.r.layout.simple_spinner_item, list);         dataadapter.setdropdownviewresource(android.r.layout.simple_spinner_dropdown_item);         spinner2.setadapter(dataadapter);     }      private string getcontacts(string contact) {          people = getcontentresolver().query(contactscontract.contacts.content_uri, null, null, null, null);         while (people.movetonext()) {             int namefieldcolumnindex = people.getcolumnindex(phonelookup.display_name);             contact = people.getstring(namefieldcolumnindex);             list.add(contact);         }         people.close();         return contact;     } 

and in logcat

07-31 13:35:55.638: i/process(11956): sending signal. pid: 11956 sig: 9 07-31 13:36:06.990: i/process(12013): sending signal. pid: 12013 sig: 9 07-31 13:38:02.463: e/trace(12130): error opening trace file: no such file or directory (2) 07-31 13:38:02.463: d/activitythread(12130): settargetheaputilization:0.25 07-31 13:38:02.463: d/activitythread(12130): settargetheapidealfree:8388608 07-31 13:38:02.473: d/activitythread(12130): settargetheapconcurrentstart:2097152 07-31 13:38:02.584: d/androidruntime(12130): shutting down vm 07-31 13:38:02.584: w/dalvikvm(12130): threadid=1: thread exiting uncaught exception (group=0x40d7b450) 07-31 13:38:02.594: e/androidruntime(12130): fatal exception: main 07-31 13:38:02.594: e/androidruntime(12130): java.lang.nullpointerexception 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.arrayadapter.createviewfromresource(arrayadapter.java:394) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.arrayadapter.getview(arrayadapter.java:362) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.absspinner.onmeasure(absspinner.java:193) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.spinner.onmeasure(spinner.java:440) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.view.measure(view.java:15348) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:4924) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.linearlayout.measurechildbeforelayout(linearlayout.java:1420) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.linearlayout.measurevertical(linearlayout.java:697) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.linearlayout.onmeasure(linearlayout.java:578) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.view.measure(view.java:15348) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:4924) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.framelayout.onmeasure(framelayout.java:314) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.view.measure(view.java:15348) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.linearlayout.measurevertical(linearlayout.java:849) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.linearlayout.onmeasure(linearlayout.java:578) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.view.measure(view.java:15348) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:4924) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.widget.framelayout.onmeasure(framelayout.java:314) 07-31 13:38:02.594: e/androidruntime(12130):    @ com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2154) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.view.measure(view.java:15348) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewrootimpl.performmeasure(viewrootimpl.java:1860) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewrootimpl.measurehierarchy(viewrootimpl.java:1108) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewrootimpl.performtraversals(viewrootimpl.java:1281) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewrootimpl.dotraversal(viewrootimpl.java:1006) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:4225) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.choreographer$callbackrecord.run(choreographer.java:725) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.choreographer.docallbacks(choreographer.java:555) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.choreographer.doframe(choreographer.java:525) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:711) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.os.handler.handlecallback(handler.java:615) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.os.handler.dispatchmessage(handler.java:92) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.os.looper.loop(looper.java:213) 07-31 13:38:02.594: e/androidruntime(12130):    @ android.app.activitythread.main(activitythread.java:4787) 07-31 13:38:02.594: e/androidruntime(12130):    @ java.lang.reflect.method.invokenative(native method) 07-31 13:38:02.594: e/androidruntime(12130):    @ java.lang.reflect.method.invoke(method.java:511) 07-31 13:38:02.594: e/androidruntime(12130):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:809) 07-31 13:38:02.594: e/androidruntime(12130):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:576) 07-31 13:38:02.594: e/androidruntime(12130):    @ dalvik.system.nativestart.main(native method) 

turns out first entry in phone empty (null), knows why... , fixed this

public void getcontacts() {          people = getcontentresolver().query(contactscontract.contacts.content_uri, null, null, null, null);         while (people.movetonext()) {             int namefieldcolumnindex = people.getcolumnindex(phonelookup.display_name);             string s = people.getstring(namefieldcolumnindex);             if (s != null)                 list.add(s);         }         people.close();     } 

Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

css - Firefox for ubuntu renders wrong colors -