美文网首页
RecyclerView进行代码混淆后报AbstractMeth

RecyclerView进行代码混淆后报AbstractMeth

作者: 博子 | 来源:发表于2016-08-27 15:49 被阅读868次

题外:最近赶完项目2.5版本,在开发过程中碰到了不少问题,为了后续不再踩同一个坑,趁发测了抽空把这些坑都整理一下。

问题:项目中使用RecyclerView展示能横向滑动的多个直播源,debug版本可正常使用,但一旦加入代码混淆后打包的release版本打开就会崩溃,提示java.lang.AbstractMethodError:abstract method "int android.support.v7.wedget.RecyclerView$Adapter.getItemCount()".

分析过程:一开始误以为是与RecyclerView相关联的support包的问题,版本兼容或者是代码混淆该包不正确。但经调试更换support包后该问题依然存在,并且如果不进行代码混淆即可运行,于是确定为代码混淆的问题。修改多次代码混淆配置均无果后,使用工具打开RecyclerView所在的jar后发现其使用的Adapter为抽象类,其中的getCount方法为抽象方法,此时意识到可能是继承的adapter中getCount方法被混淆所致。再次修改混淆配置后,问题得以解决。

解决方式:RecyclerView使用的Adapter不进行代码混淆即可。

相关文章

  • RecyclerView进行代码混淆后报AbstractMeth

    题外:最近赶完项目2.5版本,在开发过程中碰到了不少问题,为了后续不再踩同一个坑,趁发测了抽空把这些坑都整理一下。...

  • coroutine 纤程 -01

    先上代码 from queue import Queuefrom abc import abstractmeth...

  • 阿里一键登录java.lang.NoSuchMethodErro

    先说结果,加入下列混淆: 记录下排除步骤 在集成阿里云登录的时候,不混淆的情况不会出现,但开启混淆后就报下面代码 ...

  • 根据mapping.txt还原混淆的代码

    混淆后的代码报回来的日志,手里拿着混淆之后生成的mapping.txt,只需要很简单的方式就可以还原成可读代码。 ...

  • Gson混淆,遇到的问题

    Gson的混淆里面要对Gson解析的 自己写的 bean 进行混淆保护。 要不然Gson不识别混淆后的代码,会出现...

  • Android 代码混淆

    代码混淆的作用 代码混淆主要作用是使代码在编译过程中让原本方便阅读的代码进行一定规则的混淆和对代码进行一定量的优化...

  • JS逆向:使用 jsnice 提高混淆代码的可读性

    1、jsnice 简介 jsnice 是一个反混淆利器之一,可以将混淆后的代码进行更加有好的展示,从而提升代码的可...

  • 代码混淆

    混淆就是在你不想开源代码的时候对代码进行混淆处理,让代码即使被反编译也难以阅读,而且还可以精简编译后程序的大小 一...

  • Android 混淆开发经验分享(一)

    1.在项目完工后我们需要对项目进行代码混淆,代码混淆首先第一步我们需要在build.gradle中添加配置文件 b...

  • APK瘦身

    开启minifyEnabled,进行代码混淆 开启shrinkResources shrinkResources ...

网友评论

      本文标题:RecyclerView进行代码混淆后报AbstractMeth

      本文链接:https://www.haomeiwen.com/subject/qcazsttx.html