【发布时间】:2019-02-27 10:32:29
【问题描述】:
我有一个名为 EnumInt 的接口,并按如下方式使用它
case EnumInt:
@SuppressWarnings("unchecked")
Class<? extends EnumInt> enumType = (Class<? extends EnumInt>) field.getType();
Method enumStaticMethod = enumType.getMethod("fromVal", int.class);
Object enumInstance = enumStaticMethod.invoke(null, object);
field.setAccessible(true);
field.set(entity, enumInstance);
break;
我已经将整个包裹保存在 progaurd 中,但仍在获取
-保持类 abc.cde.** { *; } // 包含 EnumInt 接口和其他文件的包
java.lang.NoSuchMethodException: fromVal [int]
at java.lang.Class.getMethod(Class.java:2068)
at java.lang.Class.getMethod(Class.java:1690)
我已尝试保留 EnumInt 接口、所有本机方法、proguard 中的字段以防止混淆,但仍无法消除错误。 请注意,如果没有 proguard,它工作正常。 请帮忙。提前致谢。问题是 Enums 特有的。
【问题讨论】:
标签: android obfuscation android-proguard