How to stop ProGuard from stripping the Serializable interface from a class
Is there an explicit way to stop ProGuard from changing a class from implementing an interface? I have a class that implements java.io.Serializable , let's call it com.my.package.name.Foo . I've found that after running through ProGuard, it no longer implements Serializable . I get null after I cast from Serializable to Foo and false if I check an instance with instanceof Serializable . I've made sure to set ProGuard to ignore this class: -keep class com.my.package.name.Foo I've also tried: -keep class com.my.package.name.Foo { *; } and I've also tried the whole package by doing this: -keep