错误堆栈:

Process: com.chaozh.iReader, PID: 24217java.lang.NoSuchMethodError: No static method getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable; in class La/a/a/a; or its super classes (declaration of 'a.a.a.a' appears in base.apk!classes2.dex)at com.zhangyue.bookstore4.ui.widget.ZyTitleBar.setNavigationIconDefault(ZyTitleBar.java:547)at com.zhangyue.bookstore4.ui.fragment.ShoppingCartFragment.onViewCreated(ShoppingCartFragment.java:1260)at com.zhangyue.iReader.ui.fragment.base.CoverFragmentManager$3.run(CoverFragmentManager.java:660)at com.zhangyue.iReader.app.IreaderApplication.runOnUiThread(IreaderApplication.java:141)at com.zhangyue.iReader.ui.fragment.base.CoverFragmentManager.replaceFragment(CoverFragmentManager.java:599)at com.zhangyue.iReader.ui.presenter.LoadPluginPresenter$1$1.run(LoadPluginPresenter.java:155)at android.os.Handler.handleCallback(Handler.java:790)at android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:192)at android.app.ActivityThread.main(ActivityThread.java:6800)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:825)

错误原因:

目前报错的是我们的一个插件,报错说a.a.a.a 里面没有getDrawable 这个方法。
我们看下插件里面究竟有没有这个方法:

我们看到里面是有这个方法的!
那怎么可能查不到?
突然想到之前主工程里面也有其他的一个jar,里面有a.a.a.a 这个类,他这个类里面确实没有这个方法!

解决方法

全都是因为混淆,两个jar 包 都被混淆成了a.a.a.a!所以已经加载了第一个a.a.a.a之后,第二个就不会再加载,但是第一个里面并没有第二个的方法!

那怎么办?
对其中一个jar 混淆的时候,改变一下包的前缀。

在proguard-project.txt 增加下面这句话:

-repackageclasses 'zy'

我们再看下打完之后的包:

a 就会变成我们指定的zy.

下面给出proguard 文档的官网:
https://www.guardsquare.com/en/products/proguard/manual/examples#repacking

里面还有很多好玩的功能,比如混淆期间 ,去掉log 代码。Removing logging code,大家有时间可以自行研究。

Android 解决 No static method in class La/a/a/a; or its super classes相关推荐

  1. Android:解决Gradle DSL method not found: 'runProguard()' 问题

    已入github上的android开源项目出现Android:Gradle DSL method not found: 'runProguard()' 在新版本的gradle中,runProguard ...

  2. 关于Android Studio单元测试中“Method d in android.util.Log not mocked.”问题的解决。

    关于Android Studio单元测试中"Method d in android.util.Log not mocked."问题的解决. 点开链接 这就是解决方案.(这主要是由于 ...

  3. Android异常解决--A WebView method was called on thread 'JavaBridge'. All WebView methods must be called

    Android异常解决--A WebView method was called on thread 'JavaBridge'. All WebView methods must be called ...

  4. Android Studio编译中出现No static method metafactory怎么办?_莫韵乐与bug的奇妙冒险

    Android Studio编译中出现No static method metafactory怎么办? 在build.gradle(:app)中的加入以下代码 android {//...compil ...

  5. java.lang.NoSuchMethodError: No static method ..........

    原文地址:https://www.jianshu.com/p/e1bbb7e9901d 问题 java.lang.NoSuchMethodError: No static method getFont ...

  6. android 自定义view文字不齐,Android 解决TextView排版参差不齐的问题

    Android 解决TextView排版参差不齐的问题 在app中,展示数据时,里面有汉字.数字.特殊字符时,由于全角.半角问题导致TextView参差不齐.在网上找了许多,半角转全角并没什么用,还有 ...

  7. android 解决String.format多语言存在的问题

    今天,简单讲讲android里如何解决String.format在切换语言时存在的问题. 之前,我写过一篇博客,讲关于String.format的基本使用,大家如果没有看过,建议看看或者去网上查找资料 ...

  8. android 解决getNetworkInfo过时

    今天,简单讲讲android里如何解决getNetworkInfo过时的问题. 之前,我写了一篇博客,讲如何获取手机是否连网,其中有的代码用到了ConnectivityManager 的getNetw ...

  9. android 解决getColor()方法过时

    今天,简单讲讲android里如何解决getColor()方法过时的问题. 之前,我写博客讲了程序员需要解决过时的方法的问题,Google会提供过时函数的替代函数,程序员有责任找到替代函数,并且解决过 ...

最新文章

  1. coco数据集大小分类_MicroSoft COCO数据集
  2. php图片自动裁剪工具,php图片自动裁剪工具,解决图片变形问题,缩略图问题
  3. 一、select查询
  4. 深度解读!阿里统一应用管理架构升级的教训与实践
  5. java鼠标图片裁剪,如何用Java中的鼠标指针捕获屏幕图像
  6. SQL Server 2008|2012 阻止保存要求重新创建表的更改
  7. 数据仓库中的SQL性能优化 - Hive篇
  8. 人类附身机器人获得永生_脑机接口先驱尼古莱利斯:人类无法实现数字永生
  9. 正则获取前8位数字_数据取整,获取字符串前数字另辟蹊径之LOOKUP
  10. 【JavaScript】一个同步于本地时间的动态时间
  11. AWS新品直指微软,它会是改变数据库的“Game Changer”吗?
  12. 拦截游戏窗口被移动_家中最值得购入的17款儿童游戏,教你如何从IPAD中夺回小朋友的注意力...
  13. vscode插件之php插件koroFileHeader(自动生成注释)
  14. Intel/Nvidia双显卡笔记本用U盘安装ubuntu和Nvidia驱动
  15. C# winform 魔兽MH全图制作教程(3):魔兽1.20E.1.24B.1.24E全图内存地址 转自breeze...
  16. IDEA 插件开发 向主菜单注册菜单项目
  17. 荣誉勋章出现计算机中丢失,荣誉勋章战士无法运行的原因及解决方法
  18. 搭建大型分布式服务(二十五)如何将应用部署到TKE容器集群?
  19. linux系统应用实验DNS的安装,DNS配置实验小结
  20. mysql 围栏_一个电子围栏需求的脚本记录

热门文章

  1. 织梦php首页老是自动恢复,dede首页网址自动加上index.html问题解决方法
  2. java循环使用范围_Java循环流程控制语句
  3. 城市轨道交通运营票务管理论文_【专业简介】城市轨道交通运营与管理
  4. python全栈开发 * 表格标签 表单标签 css 引入方式 * 180807
  5. Android友盟增量更新
  6. java中注解的使用与实例 (二)
  7. CentOS 6.7 配置 yum 安装 nginx
  8. 上传Android或Java库到Maven central repository(转载)
  9. 架构之路--实战项目记录(二) 忘记数据库 开始抽象
  10. 使用OpenSSL实现证书操作