Android OkHttp Retrofit RxJava集成的常见Bug

在Android开发中,使用OkHttp、Retrofit和RxJava时遇到ArrayIndexOutOfBoundsException和BootstrapMethodError两个错误。前者是由于Retrofit、RxAndroid与adapter-rxjava版本不匹配导致,解决方案是确保所有库的版本兼容。后者是由于Retrofit使用了JDK8特性,需要在build.gradle中添加对JDK8的支持。
摘要由CSDN通过智能技术生成

在使用OkHttp Retrofit RxAndroid的过程中遇到了一些莫名的Bug。如下:

  1. ArrayIndexOutOfBoundsException

    Throwing new exception ‘length=6; index=7’ with unexpected pending exception:java.lang.ArrayIndexOutOfBoundsException: length=6; index=6

    解决办法:这个网上不少都是说取消勾选Instant Run,就每次运行都重新编译。但是这个功能在Android Studio3.5版本后废弃了。

    我试了下这样并不能解决问题,然后发现是因为Retrofit、RxAndroid和adapter-rxjava的版本不匹配引起的。RxAndroid是3.0,原来的adapter-rxjava使用的版本是2。

    更改后的依赖是这样的

    	// okHttp 3.14
        implementation 'com.squareup.okhttp3:okhttp:3.14.9'
        // Retrofit 2.9
        implementation 'com.squareup.retrofit2:retrofit:2.9.0'
        // Convert Google Json(Convert the result
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值