java.lang.abstractMethodError的错误解决「建议收藏」

java.lang.abstractMethodError的错误解决「建议收藏」日常开发中 如果在打包后遇到过 java lang abstractMeth 的问题 其中一部分 可能是混淆引起的 解决方法就是把提示报错的地方 通过 keep 的方式过滤掉 不让那些代码进行混淆 本人遇到的是一个 RecyclerView 使用时 adapter 中的 getItemCount 方法报错 原因是 Adapter 是内部类 而 getItemCount 是公共方法

日常开发中,如果在打包后遇到过java.lang.abstractMethodError的问题,其中一部分,可能是混淆引起的。

解决方法就是把提示报错的地方,通过-keep 的方式过滤掉,不让那些代码进行混淆。

本人遇到的是一个RecyclerView使用时adapter中的getItemCount方法报错。原因是Adapter是内部类,而getItemCount是公共方法。getItemCount被混淆后,系统找不到,便认为你没有实现。(我大概猜的)

解决方案如下,找到自己项目中的混淆配置文件,一般名称为proguard.cfg或proguard.txt,如果都不是就再看看,里面都是一些-keep class xxxx的语句。

在混淆配置文件中,添加过滤语句,如

-keep class com.slr.example.adapter.DataAdaper{
public ;
}

便可过滤掉Adapter中的公共方法如getItemCount,从而避免报错。

参考文章

RecyclerView混淆之后出现AbstractMethodError

RecyclerView进行代码混淆后报AbstractMethodError

编程小号
上一篇 2025-01-26 11:51
下一篇 2025-01-24 18:33

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/146597.html