java - Parcelling complex objects b/w activities in android -


i have complex class "class11" containing socket,printwriter class references. getting exception while trying pass between activities.

  public interface interface11 extends parcelable{     ...........     }      public class class11 implements interface11 {        socket clientsocket;        serversocket serversocket;      printwriter writer;           bufferedreader reader;        private jchatconnection(parcel in) {                 object [] objects= in.readarray(object.class.getclassloader());                clientsocket=(socket) objects[0];                serversocket=(serversocket) objects[1];                writer=(printwriter) objects[2];                reader=(bufferedreader) objects[3];              }       @override     public int describecontents() {          return 0;     }        @override     public void writetoparcel(parcel dest, int flags) {          object objects[] = new object[4];              objects[0]=clientsocket;             objects[1]=serversocket;             objects[2]=writer;             objects[3]=reader;          dest.writearray(objects);     }      public static final parcelable.creator<class11> creator =  new parcelable.creator<class11>() {             public class11 createfromparcel(parcel in) {                 return new class11(in);             }              public class11[] newarray(int size) {                 return new class11[size];             }         };  }; 

though have option of sharing via static object reference, reduce coupling tried pass via intent, & got exception:

java.lang.runtimeexception: unable marshall value socket[address=/192.168.43.225,port=9990,localport=213234]  @ android.os.parcel.writevalue(parcel.java:1137)  @ android.os.parcel.writearray(parcel.java: 543)........ 
  • is because socket ,printwriter not parcellable or,
  • am messing code @ writetoparcel() , private class11(parcel in)

anybody has idea how pass object between activities ?

i suggest not pass object instance argument activity. make singleton, or member of application class. allow access class11 instance everywhere in app.


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -