首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Android包读取时的BadParcelableException

从Android包读取时的BadParcelableException
EN

Stack Overflow用户
提问于 2017-05-22 16:36:50
回答 1查看 123关注 0票数 0

当从包中读取字符串时,我将得到BadParcelableException。这种情况只发生在APK的发布版本上。

我已经把这些规则添加到了Pro卫士规则中,但是仍然有同样的错误。

proguard-rules.pro

代码语言:javascript
复制
-keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;

}

错误的堆栈跟踪:

代码语言:javascript
复制
Process: com.sample.app, PID: 15083                                                       android.os.BadParcelableException: Parcelable protocol requires a Parcelable.Creator object called  CREATOR on class com.sample.checkout.j
                                                           at android.os.Parcel.readParcelableCreator(Parcel.java:2304)
                                                           at android.os.Parcel.readParcelable(Parcel.java:2245)
                                                           at android.os.Parcel.readValue(Parcel.java:2152)
                                                           at android.os.Parcel.readListInternal(Parcel.java:2526)
                                                           at android.os.Parcel.readArrayList(Parcel.java:1842)
                                                           at android.os.Parcel.readValue(Parcel.java:2173)
                                                           at android.os.Parcel.readArrayMapInternal(Parcel.java:2485)
                                                           at android.os.BaseBundle.unparcel(BaseBundle.java:221)
                                                           at android.os.BaseBundle.get(BaseBundle.java:280)
                                                           at com.sample.mp.checkout.SampleService.a(Unknown Source)
                                                           at com.sample.mp.checkout.t$1.handleMessage(Unknown Source)
                                                           at android.os.Handler.dispatchMessage(Handler.java:102)
                                                           at android.os.Looper.loop(Looper.java:135)
                                                           at android.app.ActivityThread.main(ActivityThread.java:5254)
                                                           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:903)
                                                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

有什么可以导致这个错误的帮助吗?

EN

回答 1

Stack Overflow用户

发布于 2017-07-18 17:59:00

通过向对象变量添加@SerializedName注释来解析。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44118020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档