我可以使用模糊处理的序列化吗?

Mic*_*udy 7 obfuscation serialization android proguard

我想知道它是否会起作用...在我的应用程序中,我有一个对象,我正在序列化文件,然后我用ProGuard混淆代码,应用程序进入市场.然后我想发布新版本的应用程序.我也一样.用户运行应用程序更新.

问题是 - 使用第一个版本的应用程序序列化的对象是否在第二个版本中正确反序列化?如果是的话 - 为什么?

mil*_*ose 2

我可以找到几种机制(serialPersistentFieldsObjectInputStream#readFields),使自定义序列化可以依赖于字段名称——假设默认机制还没有。ProGuard文档有一些示例配置,展示了如何使 ProGuard 忽略字段名称以及序列化使用的所有特殊方法和字段。