2016-08-03 6 views
-1

Могу ли я использовать следующий класс для получения данных с сервера.Могу ли я передать jsonobject вот так?

public class ProductDetail implements Serializable 
{ 

    private static final long serialVersionUID = 1L; 
    private String name; 
    private String description; 
    public JSONObject configOptions = null; 
} 

On putting a check on this: 
if (isUserLoggedIn()) { 
    performClick(); 
} 

Этот метод перенаправления пользователя непосредственно на страницу входа, если он не зарегистрирован в системе. В противном случае он будет выполнять щелчок. Но он идет для входа и приходит эта ошибка:

java.lang.RuntimeException: Parcelable encountered IOException writing serializable object 
                     at android.os.Parcel.writeSerializable(Parcel.java:1388) 
                     at android.os.Parcel.writeValue(Parcel.java:1335) 
                     at android.os.Parcel.writeArrayMapInternal(Parcel.java:638) 
                     at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1313) 
                     at android.os.Bundle.writeToParcel(Bundle.java:1096) 
                     at android.os.Parcel.writeBundle(Parcel.java:663) 
                     at android.support.v4.app.FragmentState.writeToParcel(Fragment.java:138) 
                     at android.os.Parcel.writeTypedArray(Parcel.java:1191) 
                     at android.support.v4.app.FragmentManagerState.writeToParcel(FragmentManager.java:385) 
                     at android.os.Parcel.writeParcelable(Parcel.java:1357) 
                     at android.os.Parcel.writeValue(Parcel.java:1262) 
                     at android.os.Parcel.writeArrayMapInternal(Parcel.java:638) 
                     at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1313) 
                     at android.os.Bundle.writeToParcel(Bundle.java:1096) 
                     at android.os.Parcel.writeBundle(Parcel.java:663) 
                     at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:2975) 
                     at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3497) 
                     at android.os.Handler.handleCallback(Handler.java:815) 
                     at android.os.Handler.dispatchMessage(Handler.java:104) 
                     at android.os.Looper.loop(Looper.java:194) 
                     at android.app.ActivityThread.main(ActivityThread.java:5576) 
                     at java.lang.reflect.Method.invoke(Native Method) 
                     at java.lang.reflect.Method.invoke(Method.java:372) 
                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:956) 
                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:751) 



Caused by: java.io.NotSerializableException: org.json.JSONObject 
                     at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1344) 
                     at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1651) 
                     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1497) 
                     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1461) 
                     at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:959) 
                     at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:360) 
                     at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1054) 
                     at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1384) 
                     at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1651) 
                     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1497) 
                     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1461) 
                     at android.os.Parcel.writeSerializable(Parcel.java:1383) 
                     at android.os.Parcel.writeValue(Parcel.java:1335)  
                     at android.os.Parcel.writeArrayMapInternal(Parcel.java:638)  
                     at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1313)  
                     at android.os.Bundle.writeToParcel(Bundle.java:1096)  
                     at android.os.Parcel.writeBundle(Parcel.java:663)  
                     at android.support.v4.app.FragmentState.writeToParcel(Fragment.java:138)  
                     at android.os.Parcel.writeTypedArray(Parcel.java:1191)  
                     at android.support.v4.app.FragmentManagerState.writeToParcel(FragmentManager.java:385)  
                     at android.os.Parcel.writeParcelable(Parcel.java:1357)  
                     at android.os.Parcel.writeValue(Parcel.java:1262)  
                     at android.os.Parcel.writeArrayMapInternal(Parcel.java:638)  
                     at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1313)  
                     at android.os.Bundle.writeToParcel(Bundle.java:1096)  
                     at android.os.Parcel.writeBundle(Parcel.java:663)  
                     at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:2975)  
                     at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3497)  
                     at android.os.Handler.handleCallback(Handler.java:815)  
                     at android.os.Handler.dispatchMessage(Handler.java:104)  
                     at android.os.Looper.loop(Looper.java:194)  
                     at android.app.ActivityThread.main(ActivityThread.java:5576)  
                     at java.lang.reflect.Method.invoke(Native Method)  
                     at java.lang.reflect.Method.invoke(Method.java:372) 
+0

'java.io.NotSerializableException: org.json.JSONObject', что вы думаете, что может означать? – njzk2

ответ

0

кажется ConfigOptions (JSONObject) не сериализации. Вы можете преобразовать JsonObject в String и попытаться его сериализовать.

Смежные вопросы