收集到的一些crash信息

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.avos.avoscloud.okhttp.Request.method()' on a null object reference
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.avos.avoscloud.okhttp.Request.method()' on a null object reference
at com.avos.avoscloud.okhttp.internal.http.HttpEngine.hasBody(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpTransport.getTransferStream(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpTransport.openResponseBody(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine.readNetworkResponse(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine.access$300(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine.readResponse(Unknown Source)
at com.avos.avoscloud.okhttp.Call.getResponse(Unknown Source)
at com.avos.avoscloud.okhttp.Call$ApplicationInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.PaasClient$RequestStatisticInterceptor.intercept(Unknown Source)
at com.avos.avoscloud.okhttp.Call$ApplicationInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.okhttp.Call.getResponseWithInterceptorChain(Unknown Source)
at com.avos.avoscloud.okhttp.Call.access$100(Unknown Source)
at com.avos.avoscloud.okhttp.Call$AsyncCall.execute(Unknown Source)
at com.avos.avoscloud.okhttp.internal.NamedRunnable.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:833)

信息来自于你们的统计,我们的sdk 版本是 v3.15.2

你好,请发下 App ID。是否有更多的上下文、日志?

兄弟,你们自己家的统计工具,有没有,你知道啊
我也不知道什么情况发生的,就知道crash了
APPID:
o49vknnavvgxfruo7gu7sxnm4hjdmzj4a6sgj4wa15opwmfr



全给你截图了

以现有的信息难以定位问题。是否可以在本地重现?然后把前前后后相关的日志一起发出来。

不能复现呢
最近我们的app crash都是你们的
但是个别情况,我也不知道怎么发生的

还有即使不能定位问题,能否把代码改进下
这种没有判断,直接就去调用,不是一个很高明的写法

烦请你们在sdk的编程中引入防御式编程

java.lang.IllegalArgumentException: sink == null
java.lang.IllegalArgumentException: sink == null
at com.avos.avoscloud.okio.Okio.buffer(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.okhttp.internal.http.HttpEngine.readResponse(Unknown Source)
at com.avos.avoscloud.okhttp.Call.getResponse(Unknown Source)
at com.avos.avoscloud.okhttp.Call$ApplicationInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.PaasClient$RequestStatisticInterceptor.intercept(Unknown Source)
at com.avos.avoscloud.okhttp.Call$ApplicationInterceptorChain.proceed(Unknown Source)
at com.avos.avoscloud.okhttp.Call.getResponseWithInterceptorChain(Unknown Source)
at com.avos.avoscloud.okhttp.Call.access$100(Unknown Source)
at com.avos.avoscloud.okhttp.Call$AsyncCall.execute(Unknown Source)
at com.avos.avoscloud.okhttp.internal.NamedRunnable.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:833)

基本都是你们的crash,你看这个sink == null,似乎是你们特地打印出来的

收到。我们正在尝试往 okhttp 代码里加入更多的 try/catch 来定位问题。