之前在android stduio里用mvphelper自动生成,最近要发包,加了混淆
打了个release包打开直接崩了,查看日志显示是获取的model为null。
以为是泛型的问题,但是加了过滤泛型
-keepattributes Signature
最后想了很多都是不知道为什么
打log跟进类的转换
public static <T> T getT(Object o, int i) { try { return ((Class<T>) ((ParameterizedType) (o.getClass() .getGenericSuperclass())).getActualTypeArguments()[i]) .newInstance(); } catch (InstantiationException e) { } catch (IllegalAccessException e) { } catch (ClassCastException e) { } return null; }
还是不行,但是网上有人不是混淆的原因,还是贴出来供大家参考自己的原因
最后猛然醒悟是混淆的原因把Model类给混淆了,所以object不能转换成model类型。
在混淆里
-keep class xxxx.model类
至此完美解决,多思多想,不要拘泥于一个小地方抓着不放