getActivity / EasyHttp

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

[Bug]:请求耗时问题 #183

Closed xiaxinqing closed 1 year ago

xiaxinqing commented 1 year ago

框架版本【必填】

11.9

问题描述【必填】

启动app首次调用网络请求,网络请求耗时延迟200~300毫秒不等 框架打印耗时56ms 但是到回调接口时却用了433ms 详见图片:

image

复现步骤【必填】

杀掉app,重新启动。或者卸载重装。 几乎必现。截图使用的是Demo

是否必现【必填】

项目 targetSdkVersion【必填】

33

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

三星GalaxyA13 5G

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

13

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

自己遇到的

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

手上暂时只有一台手机

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

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

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

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

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

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

提供报错堆栈

No response

提供截图或视频

image

提供解决方案

No response

xiaxinqing commented 1 year ago

@getActivity 轮子哥,这应该不算是bug,不过还是感觉首次是初始化了什么东西? 有时候甚至是达到700毫秒

getActivity commented 1 year ago
image
getActivity commented 1 year ago

小伙子,我测试了,确实存在这个问题,但是需要一些时间排查,目前我手头工作比较繁忙,我会尽量在这两天去处理这个问题。

xiaxinqing commented 1 year ago

好的,轮子哥修复后,艾特一下。我来替换新版本

getActivity commented 1 year ago
recordTime = SystemClock.uptimeMillis();
OkHttpClient client = new OkHttpClient();
//创建表单请求参数
FormBody.Builder builder = new FormBody.Builder();
builder.add("name", "zhangsan");
builder.add("age", "18");
FormBody formBody = builder.build();
Request request = new Request.Builder()
        .url("https://www.wanandroid.com/article/query/0/json")
        .post(formBody)
        .build();
client.newCall(request).enqueue(new Callback() {
    @Override
    public void onFailure(Call call, IOException e) {

    }
    @Override
    public void onResponse(Call call, Response response) throws IOException {
        System.out.println("EasyHttp Response 本次请求耗时:" + (response.receivedResponseAtMillis() - response.sentRequestAtMillis()));
        System.out.println("EasyHttp Start RequestConsuming 本次请求耗时:" + (SystemClock.uptimeMillis() - recordTime));
    }
});
getActivity commented 1 year ago
image
getActivity commented 1 year ago

小伙子,我用原生的 OkHttp 测试也有这个问题,那这个不是框架的问题了,你可能就要反馈给 OkHttp 官方了

xiaxinqing commented 1 year ago

那我借用轮子哥的截图,去okhttp那里贴一个issues

getActivity commented 1 year ago

https://github.com/square/okhttp/issues/7885

getActivity commented 1 year ago

小伙子,我看到你在 OkHttp Github 上面提的 issue,建议小伙子你可以做进一步的排查,看看 OkHttp 是在哪些方法耗时比较长的,有详细的结果了再提交给 OkHttp 官方人员,还有要注意使用英文提问。