-
-
Notifications
You must be signed in to change notification settings - Fork 197
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]:java.lang.ClassCastException: java.lang.Void cannot be cast to com.hjq.easy.demo.http.model.HttpData #254
Comments
既然有人提过类似的 issue,为什么又重新提了一个新的 issue? |
因为按照提供的方法解决不了。 |
@r9000x 之前有人提出的类似问题,是因为混淆导致泛型被擦除导致的解析不到泛型,并不是框架解析泛型的代码写得有问题,对于你提出的这个问题,大概率也是这个问题,你先排查一下是否是泛型被擦除导致的,如果是泛型被擦除导致的,需要你自行解决,如果不是这个问题,你需要提供泛型在没有擦除的证明,我在确定是框架的问题后会进行处理。 |
目前你这个问题无法明确是否为框架的问题,就目前已知的信息来看,大概率是你自己的问题,所以只能是你先行排查,等确定是框架的问题,我才会做处理。 |
你下载demo运行一下看看,我只是改了一下AGP的版本以及target,没有我自己代码的东西。所以应该不是我自己的问题,demo是你项目的demo,不是我自己写的,建议你看看,个人觉得是框架的问题。你说的https://github.com/getActivity/EasyHttp/issues/221这个,试过了也是不行。 |
工程我运行了,没有发现什么问题 |
@r9000x 这个问题应该是你来确定,如果泛型被擦除了,框架解析不到是没有任何问题,你换任何框架都一样的,框架层面是无法解决的,如果泛型没有被擦除,这个就是框架的问题,你反馈前应当确定好这个问题是不是泛型被擦除导致的,你总说自己没有改什么东西,但是实际上我无法判断你改了什么东西,因为我无法一行行代码对照你改了什么,你上面说只改了 Gradle 版本和 targetSdk 版本,但是最上面又说加了 |
debug模式是没有问题,请使用./gradlew bundleRelease命令打包release版本的aab格式,具体你看我最早的描述。并非为了图省事,只是在解决问题。 |
@r9000x 你先按照我的要求,核实一下编译后的产物里面的泛型是不是被擦除了? |
可以的,你也可以按照我的描述去复现一下,如果不能复现,那可能是我这边的问题。 |
对于一些不能确定是不是框架的问题,我会判断这个问题是偏向框架的问题多一点,还是非框架的问题多一点
如果是你第一个反馈此问题的,那么结果将会偏向第一种,但是之前有人反馈此问题的人 issues/221 佐证了这个问题大概率就是非框架的问题,所以你需要走第二种的流程先行排查,走完了才轮到我处理,不应当是我先排查你后排查,假设后续证实这个问题是非框架的问题,这个操作等于是利用了框架作者个人的时间和精力去解决个人遇到的技术问题,这个口子一旦放开,后续会有更多的人会效仿,争先恐后找各种理由来白嫖开源框架作者的时间和精力。 |
轮子哥,我也遇到了相同的问题,升级gradle之后,添加了混淆规则,但是没有效果,requestSuccess获取到的类型是Void |
-keep class * implements com.hjq.http.listener.OnHttpListener { -keep class * extends com.hjq.http.model.ResponseClass { |
收到,感谢反馈,文档已纠正 |
框架版本【必填】
12.8
问题描述【必填】
升级AGP 8.5.1后打包aab格式会闪退;
复现步骤【必填】
下载
EasyHttpNew.zip
运行后,主要修改了target到34,AGP也升级了;具体你看看demo;运行后打包release版本的aab格式包,发现会闪退;错误就是标题那种;但是打包release版本的apk又不会;排查后推测应该是R8的问题;于是设置#android.enableR8.fullMode=false确实可以,但是#android.enableR8.fullMode=true就不行;因为升级AGP8之后,默认是true;一番排查后,发现
会走这个逻辑;
aab格式转apk可以按照https://blog.csdn.net/yingaizhu/article/details/119545459这里配置后,
分别使用命令行
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
解压到目录,然后连接手机到电脑,使用bundletool install-apks --apks=/MyApp/my_app.apks来安装到手机进行测试;
是否必现【必填】
是
项目 targetSdkVersion【必填】
34
出现问题的手机信息【必填】
OPPO Find X6
出现问题的安卓版本【必填】
14
问题信息的来源渠道【必填】
用户反馈
是部分机型还是所有机型都会出现【必答】
目前测试14系统会,没有其他机型无法测试
框架最新的版本是否存在这个问题【必答】
是
框架文档是否提及了该问题【必答】
否
是否已经查阅框架文档但还未能解决的【必答】
是
issue 列表中是否有人曾提过类似的问题【必答】
是
是否已经搜索过了 issue 列表但还未能解决的【必答】
是
是否可以通过 Demo 来复现该问题【必答】
是
提供报错堆栈
No response
提供截图或视频
No response
提供解决方案
No response
The text was updated successfully, but these errors were encountered: