集成最新的alipay sdk遇到如下错误:
Unexpected error while computing stack sizes: Class = [com/alipay/sdk/m/i/a] Method = [a(Lcom/alipay/sdk/m/o/a;Landroid/content/Context;Z)V] Exception = [java.lang.IllegalArgumentException] (Stack size becomes negative after instruction [66] dup in [com/alipay/sdk/m/i/a.a(Lcom/alipay/sdk/m/o/a;Landroid/content/Context;Z)V]) Unexpected error while editing code:
定位:
(1)确保出问题的类被keep住了
(2)如果1确实被keep住但还有问题,可能是别的gradle插件在transform期间把字节码操作坏了(比如booster的1.6.0版本),导致proguard期间才报错,验证是哪个插件时可以二分法注释插件来定位。解决:
(1)看该插件是否有exclude某个class功能,有的话这应该是最优解
(2)升级该插件,比如滴滴的booster升级到4.1.0可解决此问题
(3)如果1和2都没有,该插件没人维护了,那只能尝试自己写个插件在编译期排除此class文件,然后将此class反编译成源码,查看出问题的方法,找到可能会被写坏的方法,换种方式写,再将修改后的源码参与编译,可能就不会被别的gradle插件写坏了,此乃无奈之举,耗时也会比较久。
关于Stack size becomes negative after instruction [66] dup in xxx
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Android studio我们那些年遇到的坑(一) 总结一下最近多年遇到的andorid studio重大问题,...
- 本篇文章会通过一个案例对逆向破解的流程进行详细的解说 通过本篇文章你会知道逆向的一个简单流程 学会简单的逆向开发 ...