Android BadParcelableException仅与签名的apk

当我从调试运行我的项目时,一切正常。 但是,当我使用从Android Studio(使用proguard)生成的签名apk运行它时,使用getParcelable时出现以下错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{mypackage.android/mypackage.mobile.android.activities.searchActivity}: android.os.BadParcelableException: Parcelable protocol requires a Parcelable.Creator object called CREATOR on class mypackage.android.ada 

为什么只有我签名的apk才会发生此exception? 在我的proguard配置文件中,我确实必须使用dontwarn android.support.v4.**来避免proguard错误。 是回来咬我吗?

你需要保护CREATOR字段免受proguard的混淆

将此行添加到您的proguard配置:

 -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; }