getActivity / EasyHttp

Android 网络请求框架,简单易用,so easy
Apache License 2.0
1.4k stars 191 forks source link

[Bug]:调用接口报错,debug正常,release包存在错误 #253

Closed dxmwl closed 4 months ago

dxmwl commented 4 months ago

框架版本【必填】

12.8

问题描述【必填】

调用接口报错,debug正常,release包存在错误

FATAL EXCEPTION: main
                                                                                                    Process: ai.appar.aiexpense, PID: 14293
                                                                                                    java.lang.NullPointerException: Parameter specified as non-null is null: method ai.appar.aiexpense.app.AppActivity.onHttpStart, parameter call
                                                                                                        at ai.appar.aiexpense.app.AppActivity.onHttpStart(Unknown Source:2)
                                                                                                        at com.hjq.http.listener.HttpCallbackProxy.onHttpStart(HttpCallbackProxy.java:25)
                                                                                                        at com.hjq.http.callback.NormalCallback.dispatchHttpStartCallback(NormalCallback.java:155)
                                                                                                        at com.hjq.http.callback.NormalCallback.$r8$lambda$ceCisNoDW6voT9thXQ-3DuGMxpI(Unknown Source:0)
                                                                                                        at com.hjq.http.callback.NormalCallback$$ExternalSyntheticLambda1.run(Unknown Source:2)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:938)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                        at android.os.Looper.loopOnce(Looper.java:211)
                                                                                                        at android.os.Looper.loop(Looper.java:300)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:8322)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1038)

复现步骤【必填】

谷歌账号授权登录,调用接口获取信息

class GetGoogleAccessTokenApi : IRequestApi, IRequestHost {
    override fun getApi(): String {
        return "oauth2/v4/token"
    }

    override fun getHost(): String {
        return "https://www.googleapis.com/"
    }

    val grant_type = "authorization_code"
    var client_id: String? = null
    var client_secret: String? = null
    val redirect_uri: String? = ""
    var code: String? = null

    data class GoogleAccessTokenDto(
        val access_token: String,
        val expires_in: Int,
        val id_token: String,
        val refresh_token: String,
        val scope: String,
        val token_type: String
    )
}

是否必现【必填】

未选择

项目 targetSdkVersion【必填】

34

出现问题的手机信息【必填】

红米note9

出现问题的安卓版本【必填】

12

问题信息的来源渠道【必填】

No response

是部分机型还是所有机型都会出现【必答】

目前只有这一个手机,看报错信息应该跟机型无关

框架最新的版本是否存在这个问题【必答】

框架文档是否提及了该问题【必答】

是否已经查阅框架文档但还未能解决的【必答】

issue 列表中是否有人曾提过类似的问题【必答】

是否已经搜索过了 issue 列表但还未能解决的【必答】

是否可以通过 Demo 来复现该问题【必答】

提供报错堆栈

FATAL EXCEPTION: main
                                                                                                    Process: ai.appar.aiexpense, PID: 14293
                                                                                                    java.lang.NullPointerException: Parameter specified as non-null is null: method ai.appar.aiexpense.app.AppActivity.onHttpStart, parameter call
                                                                                                        at ai.appar.aiexpense.app.AppActivity.onHttpStart(Unknown Source:2)
                                                                                                        at com.hjq.http.listener.HttpCallbackProxy.onHttpStart(HttpCallbackProxy.java:25)
                                                                                                        at com.hjq.http.callback.NormalCallback.dispatchHttpStartCallback(NormalCallback.java:155)
                                                                                                        at com.hjq.http.callback.NormalCallback.$r8$lambda$ceCisNoDW6voT9thXQ-3DuGMxpI(Unknown Source:0)
                                                                                                        at com.hjq.http.callback.NormalCallback$$ExternalSyntheticLambda1.run(Unknown Source:2)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:938)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                        at android.os.Looper.loopOnce(Looper.java:211)
                                                                                                        at android.os.Looper.loop(Looper.java:300)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:8322)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1038)

提供截图或视频

No response

提供解决方案

No response

dxmwl commented 4 months ago

跟混淆无关,未开启混淆的情况下,还是报这个错

anaer commented 4 months ago

看报错提示非空参数问题,可以打印参数日志看下吧

dxmwl commented 4 months ago

请求参数是正常的image

dxmwl commented 4 months ago

这边easyHttp是从11.0升到12.8,我看文档中并没有升级所需的特殊配置

dxmwl commented 4 months ago

image

getActivity commented 4 months ago

小伙子,目前此 issue 打回,原因如下:

请重新提交 issue,并且严格按照 issue 模板填写