Android中使用logger打印完整的okhttp网络请求和响应的所有相关信息(请求行、请求头、请求体、响应行、响应行、响应头、响应体)

如果你的项目中的网络请求库是Retrofit的话,他的底层封装的是OkHttp,通常调试网络接口时都会将网络请求和响应相关数据通过日志的形式打印出来。OkHttp也提供了一个网络拦截器okhttp-logging-interceptor,通过它能拦截okhttp网络请求和响应所有相关信息(请求行、请求头、请求体、响应行、响应行、响应头、响应体)。


使用okhttp网络日志拦截器需添加以下依赖:

implementation 'com.squareup.okhttp3:logging-interceptor:3.6.0'

定义拦截器中的网络日志工具:

 HttpLoggingInterceptor logInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() {

            @Override
            public void log(String message) {
                 Log.d("logInterceptor", message);
            }
        });
        logInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);

初始化OkHttpClient,并添加网络日志拦截器:

这里写图片描述

打印出来的日志是这样的:
这里写图片描述


需要注意的地方:
在给OkhttpClient添加网络请求拦截器的时候需要注意,应该调用方法addNetworkInterceptor,而不是addInterceptor。因为有时候可能会通过cookieJar在header里面去添加一些持久化的cookie或者session信息。这样就在请求头里面就不会打印出这些信息。
看一下OkHttpClient调用拦截器的源码:

Response getResponseWithInterceptorChain() throws IOException {
    // Build a full stack of interceptors.
    List<Interceptor> interceptors = new ArrayList<>();
    interceptors.addAll(client.interceptors());
    interceptors.add(retryAndFollowUpInterceptor);
    interceptors.add(new BridgeInterceptor(client.cookieJar()));
    interceptors.add(new CacheInterceptor(client.internalCache()));
    interceptors.add(new ConnectInterceptor(client));
    if (!forWebSocket) {
      interceptors.addAll(client.networkInterceptors());
    }
    interceptors.add(new CallServerInterceptor(forWebSocket));
    Interceptor.Chain chain = new RealInterceptorChain(
        interceptors, null, null, null, 0, originalRequest);
    return chain.proceed(originalRequest);
  }

在okhttp执行网络请求时,会先构造拦截链,此时是将所有的拦截器都放入一个ArrayList中,看源码就知道添加拦截器的顺序是:
client.interceptors()
BridgeInterceptor
CacheInterceptor
ConnectInterceptor
networkInterceptors
CallServerInterceptor
在通过拦截链执行拦截逻辑是按先后顺序递归调用的。如果是我们调用addInterceptor方法来添加HttpLoggingInterceptor拦截器,那么网络日志拦截器就会被添加到client.networkInterceptors()里面,根据添加到ArrayList中的顺序,执行拦截时会先执行HttpLoggingInterceptor,并打印出日志。然后才会执行CookieJar包装的拦截器BridgeInterceptor。这就导致我们添加header中的cookie等信息不会打印出来。


利用HttpLoggingInterceptor打印网络日志非常完整,但是看到响应的结果数据时,感觉有些混乱,平常在调试时希望一眼就能看清楚json数据的层次结构,所以需要将响应结果的json串进行格式化。

我采用的是开源日志库looger来打印,这个库不但能很方便的帮开发者过滤掉系统日志,而且对打印出来的效果作了优化,更加简洁美观。

关于looger的详细的API:传送门

加入logger的依赖:

implementation 'com.orhanobut:logger:2.2.0'

在使用looger库的时候我通常都会先封装一层,作为一个工具类。

public class LogUtil {
    public static boolean DEBUG_ENABLE = false;// 是否调试模式

    /**
     * 在application调用初始化
     */
    public static void logInit(boolean debug) {
        DEBUG_ENABLE = debug;
        if (DEBUG_ENABLE) {
            FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
                    .showThreadInfo(false)  // (Optional) Whether to show thread info or not. Default true
                    .methodCount(1)         // (Optional) How many method line to show. Default 2
                    .methodOffset(7)        // (Optional) Hides internal method calls up to offset. Default 5
                    .logStrategy(new CustomLogCatStrategy()) // (Optional) Changes the log strategy to print out. Default LogCat
                    .tag("logger")   // (Optional) Global tag for every log. Default PRETTY_LOGGER
                    .build();
            Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
        }
    }

    public static void d(String tag, String message) {
        if (DEBUG_ENABLE) {
            Logger.d(tag, message);
        }
    }

    public static void d(String message) {
        if (DEBUG_ENABLE) {
            Logger.d(message);
        }
    }

    public static void e(Throwable throwable, String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.e(throwable, message, args);
        }
    }

    public static void e(String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.e(message, args);
        }
    }

    public static void i(String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.i(message, args);
        }
    }

    public static void v(String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.v(message, args);
        }
    }

    public static void w(String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.v(message, args);
        }
    }

    public static void wtf(String message, Object... args) {
        if (DEBUG_ENABLE) {
            Logger.wtf(message, args);
        }
    }

    public static void json(String message) {
        if (DEBUG_ENABLE) {
            Logger.json(message);
        }
    }

    public static void xml(String message) {
        if (DEBUG_ENABLE) {
            Logger.xml(message);
        }
    }
}

在应用入口调用初始化方法

public class AppApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        /**初始化logger*/
        LogUtil.logInit(BuildConfig.LOG_DEBUG);
    }
}

如果直接在logInterceptor的log方法中调用LogUtil.d(message),打印出来的日志是分散的,因为log方法是将一个网络请求的请求\响应行、header逐条打印的。但想要的效果是将同一个网络请求和响应的所有信息合并成一条日志,这样才方便调试时查看。
所以需要在LoggerHttp的log方法中做一些逻辑处理:

HttpLoggingInterceptor logInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() {

            private StringBuilder mMessage = new StringBuilder();

            @Override
            public void log(String message) {
                // 请求或者响应开始
                if (message.startsWith("--> POST") || message.startsWith("--> GET")) {
                    mMessage.setLength(0);
                }
                // 以{}或者[]形式的说明是响应结果的json数据,需要进行格式化
                if ((message.startsWith("{") && message.endsWith("}"))
                        || (message.startsWith("[") && message.endsWith("]"))) {
                    message = JsonUtil.formatJson(JsonUtil.decodeUnicode(message));
                }
                mMessage.append(message.concat("\n"));
                // 请求或者响应结束,打印整条日志
                if (message.startsWith("<-- END HTTP")) {
                    LogUtil.d(mMessage.toString());
                }
            }
        });
        logInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);

这里之所以没有采用logger库的Logger.json(String json)方法去打印json数据,是因为这个方法调用也会打印成单独的一条日志,不能实现将请求的所有信息在一条日志中。
JsonUtil是单独封装的一个将json格式化的工具,通过formatJson(String json)将json串格式化出清晰的层次结构。

decodeUnicode(String json)是将json中的Unicode编码转化为汉字编码(unicode编码的json中的汉字打印出来有可能是\u开头的字符串,所以需要处理)。

public class JsonUtil {

    /**
     * 格式化json字符串
     *
     * @param jsonStr 需要格式化的json串
     * @return 格式化后的json串
     */
    public static String formatJson(String jsonStr) {
        if (null == jsonStr || "".equals(jsonStr)) return "";
        StringBuilder sb = new StringBuilder();
        char last = '\0';
        char current = '\0';
        int indent = 0;
        for (int i = 0; i < jsonStr.length(); i++) {
            last = current;
            current = jsonStr.charAt(i);
            //遇到{ [换行,且下一行缩进
            switch (current) {
                case '{':
                case '[':
                    sb.append(current);
                    sb.append('\n');
                    indent++;
                    addIndentBlank(sb, indent);
                    break;
                //遇到} ]换行,当前行缩进
                case '}':
                case ']':
                    sb.append('\n');
                    indent--;
                    addIndentBlank(sb, indent);
                    sb.append(current);
                    break;
                //遇到,换行
                case ',':
                    sb.append(current);
                    if (last != '\\') {
                        sb.append('\n');
                        addIndentBlank(sb, indent);
                    }
                    break;
                default:
                    sb.append(current);
            }
        }
        return sb.toString();
    }

    /**
     * 添加space
     *
     * @param sb
     * @param indent
     */
    private static void addIndentBlank(StringBuilder sb, int indent) {
        for (int i = 0; i < indent; i++) {
            sb.append('\t');
        }
    }

   /**
     * http 请求数据返回 json 中中文字符为 unicode 编码转汉字编码
     * @param theString
     * @return 转化后的结果.
     */
    public static String decodeUnicode(String theString) {
        char aChar;
        int len = theString.length();
        StringBuffer outBuffer = new StringBuffer(len);
        for (int x = 0; x < len; ) {
            aChar = theString.charAt(x++);
            if (aChar == '\\') {
                aChar = theString.charAt(x++);
                if (aChar == 'u') {
                    int value = 0;
                    for (int i = 0; i < 4; i++) {
                        aChar = theString.charAt(x++);
                        switch (aChar) {
                            case '0':
                            case '1':
                            case '2':
                            case '3':
                            case '4':
                            case '5':
                            case '6':
                            case '7':
                            case '8':
                            case '9':
                                value = (value << 4) + aChar - '0';
                                break;
                            case 'a':
                            case 'b':
                            case 'c':
                            case 'd':
                            case 'e':
                            case 'f':
                                value = (value << 4) + 10 + aChar - 'a';
                                break;
                            case 'A':
                            case 'B':
                            case 'C':
                            case 'D':
                            case 'E':
                            case 'F':
                                value = (value << 4) + 10 + aChar - 'A';
                                break;
                            default:
                                throw new IllegalArgumentException(
                                        "Malformed   \\uxxxx   encoding.");
                        }

                    }
                    outBuffer.append((char) value);
                } else {
                    if (aChar == 't')
                        aChar = '\t';
                    else if (aChar == 'r')
                        aChar = '\r';
                    else if (aChar == 'n')
                        aChar = '\n';
                    else if (aChar == 'f')
                        aChar = '\f';
                    outBuffer.append(aChar);
                }
            } else
                outBuffer.append(aChar);
        }
        return outBuffer.toString();
    }
}

最终效果展示(由于日志比较长,不能将图全部截出来,所以我就把日志贴成代码段了)

08-31 06:40:31.522 8672-8785/com.yonbor.bettermvp D/7logger: ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────
08-31 06:40:31.531 8672-8785/com.yonbor.bettermvp D/9logger: │ CacheInterceptor.intercept  (CacheInterceptor.java:93)
08-31 06:40:31.533 8672-8785/com.yonbor.bettermvp D/8logger: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
08-31 06:40:31.534 8672-8785/com.yonbor.bettermvp D/0logger: │ --> GET http://v.juhe.cn/toutiao/index?type=top&key=9d5c5d5de8c5ff12244879da48f5bfb3 http/1.1
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/6logger: │ Host: v.juhe.cn
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/1logger: │ Connection: Keep-Alive
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/3logger: │ Accept-Encoding: gzip
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/1logger: │ User-Agent: okhttp/3.8.0
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/7logger: │ If-None-Match: 61af8c7934fd5398f3e724e3b67bf0d0
08-31 06:40:31.539 8672-8785/com.yonbor.bettermvp D/0logger: │ --> END GET
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/1logger: │ <-- 200 OK http://v.juhe.cn/toutiao/index?type=top&key=9d5c5d5de8c5ff12244879da48f5bfb3 (80ms)
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/2logger: │ Date: Fri, 31 Aug 2018 06:40:33 GMT
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/3logger: │ Content-Type: application/json;charset=utf-8
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/6logger: │ Transfer-Encoding: chunked
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/0logger: │ Connection: keep-alive
08-31 06:40:31.540 8672-8785/com.yonbor.bettermvp D/6logger: │ Set-Cookie: aliyungf_tc=AQAAALHNWT/wuw4AKdRleTZrk+bYfGLG; Path=/; HttpOnly
08-31 06:40:31.541 8672-8785/com.yonbor.bettermvp D/7logger: │ Etag: 61af8c7934fd5398f3e724e3b67bf0d0
08-31 06:40:31.542 8672-8785/com.yonbor.bettermvp D/8logger: │ 
08-31 06:40:31.542 8672-8785/com.yonbor.bettermvp D/1logger: │ {
08-31 06:40:31.542 8672-8785/com.yonbor.bettermvp D/0logger: │  "reason":"成功的返回",
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/5logger: │  "result":{
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/2logger: │      "stat":"1",
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/5logger: │      "data":[
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/8logger: │          {
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/6logger: │              "uniquekey":"cfa545a7d6cd35c331545c122c396cd3",
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/7logger: │              "title":"国内巧遇海洋文化2",
08-31 06:40:31.543 8672-8785/com.yonbor.bettermvp D/4logger: │              "date":"2018-08-31 14:00",
08-31 06:40:31.544 8672-8785/com.yonbor.bettermvp D/5logger: │              "category":"头条",
08-31 06:40:31.544 8672-8785/com.yonbor.bettermvp D/4logger: │              "author_name":"风华臻品l",
08-31 06:40:31.544 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831140030120.html",
08-31 06:40:31.545 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s":"http://06imgmini.eastday.com/mobile/20180831/20180831140030_aa716daf34bde782bc728eb7226e97f5_3_mwpm_03200403.jpg",
08-31 06:40:31.545 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s02":"http://06imgmini.eastday.com/mobile/20180831/20180831140030_aa716daf34bde782bc728eb7226e97f5_1_mwpm_03200403.jpg",
08-31 06:40:31.545 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s03":"http://06imgmini.eastday.com/mobile/20180831/20180831140030_aa716daf34bde782bc728eb7226e97f5_11_mwpm_03200403.jpg"
08-31 06:40:31.546 8672-8785/com.yonbor.bettermvp D/8logger: │          },
08-31 06:40:31.547 8672-8785/com.yonbor.bettermvp D/1logger: │          {
08-31 06:40:31.548 8672-8785/com.yonbor.bettermvp D/0logger: │              "uniquekey":"10b5fe08c23f0efd55b06d60773d5acf",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/2logger: │              "title":"这飞机在高山湖上突然打开舱盖,满天飞鱼场面壮观",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/4logger: │              "date":"2018-08-31 13:58",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/5logger: │              "category":"头条",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/9logger: │              "author_name":"可乐小姐",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/2logger: │              "url":"http://mini.eastday.com/mobile/180831135846992.html",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s":"http://00imgmini.eastday.com/mobile/20180831/20180831_50040faccdc39144c1a497f1b84ff56d_cover_mwpm_03200403.jpg",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s02":"http://00imgmini.eastday.com/mobile/20180831/20180831_ce61753468c52e7bfe8eef5c21872e98_cover_mwpm_03200403.jpg",
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s03":"http://00imgmini.eastday.com/mobile/20180831/20180831_b92fe1819a43046afbb3299d6563cf10_cover_mwpm_03200403.jpg"
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/4logger: │          },
08-31 06:40:31.550 8672-8785/com.yonbor.bettermvp D/2logger: │          {
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/7logger: │              "uniquekey":"15aeb4943eb3ecf186c5444e36404b91",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"70岁老太成冻龄女神 身材曼妙如20岁少女",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/7logger: │              "date":"2018-08-31 13:56",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/6logger: │              "category":"头条",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/7logger: │              "author_name":"北青网",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/9logger: │              "url":"http://mini.eastday.com/mobile/180831135608737.html",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s":"http://07imgmini.eastday.com/mobile/20180831/20180831135608_fc027a52a7514f7069214a9d47310e19_4_mwpm_03200403.jpg",
08-31 06:40:31.551 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s02":"http://07imgmini.eastday.com/mobile/20180831/20180831135608_fc027a52a7514f7069214a9d47310e19_1_mwpm_03200403.jpg",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s03":"http://07imgmini.eastday.com/mobile/20180831/20180831135608_fc027a52a7514f7069214a9d47310e19_2_mwpm_03200403.jpg"
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/8logger: │          },
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/9logger: │          {
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/0logger: │              "uniquekey":"621230c6128142f14a9f1485ec45eb13",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/6logger: │              "title":"莫雷神操作!火箭与太阳完成四人大交易,瞬间解决两大难题",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/9logger: │              "date":"2018-08-31 13:55",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/0logger: │              "category":"头条",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/2logger: │              "author_name":"360度后仰",
08-31 06:40:31.552 8672-8785/com.yonbor.bettermvp D/7logger: │              "url":"http://mini.eastday.com/mobile/180831135526606.html",
08-31 06:40:31.558 8672-8785/com.yonbor.bettermvp D/6logger: │              "thumbnail_pic_s":"http://06imgmini.eastday.com/mobile/20180831/20180831135526_547828e02450d4dbef00ae97cce7c21a_1_mwpm_03200403.jpg",
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s02":"http://06imgmini.eastday.com/mobile/20180831/20180831135526_547828e02450d4dbef00ae97cce7c21a_2_mwpm_03200403.jpg",
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s03":"http://06imgmini.eastday.com/mobile/20180831/20180831135526_547828e02450d4dbef00ae97cce7c21a_3_mwpm_03200403.jpg"
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/5logger: │          },
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/3logger: │          {
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/9logger: │              "uniquekey":"8837b0e77ed60b2300bc5dde0ca31944",
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/0logger: │              "title":"亚运会女足决赛,中日大战五大看点",
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:49",
08-31 06:40:31.561 8672-8785/com.yonbor.bettermvp D/9logger: │              "category":"头条",
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/8logger: │              "author_name":"蜗牛赛点",
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/9logger: │              "url":"http://mini.eastday.com/mobile/180831134956643.html",
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s":"http://00imgmini.eastday.com/mobile/20180831/20180831134956_9f99cc792599534823e8ae8f16f27e60_1_mwpm_03200403.jpg"
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/6logger: │          },
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/3logger: │          {
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/7logger: │              "uniquekey":"3ccb45cc7aae73f979e21517703458b0",
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/0logger: │              "title":"高铁竟成作弊工具!只因信�
08-31 06:40:31.562 8672-8785/com.yonbor.bettermvp D/9logger: │ ��“飞太快”,主人为掩真相残忍杀鸽",
08-31 06:40:31.564 8672-8785/com.yonbor.bettermvp D/6logger: │              "date":"2018-08-31 13:45",
08-31 06:40:31.565 8672-8785/com.yonbor.bettermvp D/7logger: │              "category":"头条",
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/9logger: │              "author_name":"东方头条",
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/0logger: │              "url":"http://mini.eastday.com/mobile/180831134522407.html",
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s":"http://05imgmini.eastday.com/mobile/20180831/20180831_4a38b4bf12b4b7e596440a00b37061ff_mwpm_03200403.jpg",
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s02":"http://05imgmini.eastday.com/mobile/20180831/20180831_596f15d6d7a9da1dd88900f8562bac26_mwpm_03200403.jpg",
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s03":"http://05imgmini.eastday.com/mobile/20180831/20180831_29674280fc578f91b8cfe687b0feab76_mwpm_03200403.jpg"
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/1logger: │          },
08-31 06:40:31.566 8672-8785/com.yonbor.bettermvp D/4logger: │          {
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/5logger: │              "uniquekey":"da2d7350551d7c2dd048f9826f9b5ca6",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/3logger: │              "title":"美联航修改对台标注耍花招用"货币-语言"分类 外交部:跳不出一中原则",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/4logger: │              "date":"2018-08-31 13:40",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/5logger: │              "category":"头条",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/4logger: │              "author_name":"千龙网",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831134059765.html",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/6logger: │              "thumbnail_pic_s":"http://01imgmini.eastday.com/mobile/20180831/20180831134059_f49c575a42abcd7602aa7318b18a74ef_1_mwpm_03200403.jpg"
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/2logger: │          },
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/9logger: │          {
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/3logger: │              "uniquekey":"0a5590541977c15aee4bb806b0dbe656",
08-31 06:40:31.567 8672-8785/com.yonbor.bettermvp D/1logger: │              "title":"饭后喝一杯,减肥消赘肉,1个月轻19斤,腰细了脸蛋儿更漂亮",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/6logger: │              "date":"2018-08-31 13:39",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/9logger: │              "category":"头条",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/0logger: │              "author_name":"走马世界",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/3logger: │              "url":"http://mini.eastday.com/mobile/180831133954466.html",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s":"http://06imgmini.eastday.com/mobile/20180831/20180831133954_4cf78a59428fb92342b1b0e9751044c7_4_mwpm_03200403.jpg",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s02":"http://06imgmini.eastday.com/mobile/20180831/20180831133954_4cf78a59428fb92342b1b0e9751044c7_6_mwpm_03200403.jpg",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s03":"http://06imgmini.eastday.com/mobile/20180831/20180831133954_4cf78a59428fb92342b1b0e9751044c7_5_mwpm_03200403.jpg"
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/5logger: │          },
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/7logger: │          {
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/1logger: │              "uniquekey":"7f46eee31cdc8903ab351750d745b577",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/5logger: │              "title":"德甲美妆小魔头今夏拒皇马!3大反常识举动,10月斗瓜帅",
08-31 06:40:31.568 8672-8785/com.yonbor.bettermvp D/0logger: │              "date":"2018-08-31 13:37",
08-31 06:40:31.570 8672-8785/com.yonbor.bettermvp D/9logger: │              "category":"头条",
08-31 06:40:31.570 8672-8785/com.yonbor.bettermvp D/2logger: │              "author_name":"网易体育",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/3logger: │              "url":"http://mini.eastday.com/mobile/180831133750986.html",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s":"http://06imgmini.eastday.com/mobile/20180831/20180831133750_c41b6d7b594ce4f72277fe9ba9274c5b_1_mwpm_03200403.jpg",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s02":"http://06imgmini.eastday.com/mobile/20180831/20180831133750_c41b6d7b594ce4f72277fe9ba9274c5b_5_mwpm_03200403.jpg",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s03":"http://06imgmini.eastday.com/mobile/20180831/20180831133750_c41b6d7b594ce4f72277fe9ba9274c5b_6_mwpm_03200403.jpg"
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/3logger: │          },
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/6logger: │          {
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/7logger: │              "uniquekey":"2ddd277d7cffd9535a4c791837523013",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/4logger: │              "title":"有电又有智,博瑞GE要在佛山打出名堂",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:36",
08-31 06:40:31.572 8672-8785/com.yonbor.bettermvp D/2logger: │              "category":"头条",
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/6logger: │              "author_name":"微信搜索",
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/7logger: │              "url":"http://mini.eastday.com/mobile/180831133618264.html",
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/5logger: │              "thumbnail_pic_s":"http://00imgmini.eastday.com/mobile/20180831/20180831133618_db114318b020a26d6b0f77df88a6f9fe_5_mwpm_03200403.jpg",
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s02":"http://00imgmini.eastday.com/mobile/20180831/20180831133618_db114318b020a26d6b0f77df88a6f9fe_6_mwpm_03200403.jpg",
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s03":"http://00imgmini.eastday.com/mobile/20180831/20180831133618_db114318b020a26d6b0f77df88a6f9fe_1_mwpm_03200403.jpg"
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/4logger: │          },
08-31 06:40:31.573 8672-8785/com.yonbor.bettermvp D/5logger: │          {
08-31 06:40:31.574 8672-8785/com.yonbor.bettermvp D/9logger: │              "uniquekey":"f76c017f481e56ecfbbe470be87f7b3a",
08-31 06:40:31.574 8672-8785/com.yonbor.bettermvp D/7logger: │              "title":"9月天降大财,
08-31 06:40:31.575 8672-8785/com.yonbor.bettermvp D/1logger: │               正财丰厚,
08-31 06:40:31.575 8672-8785/com.yonbor.bettermvp D/8logger: │               偏财大吉,
08-31 06:40:31.575 8672-8785/com.yonbor.bettermvp D/3logger: │               笑得最开心的生肖",
08-31 06:40:31.575 8672-8785/com.yonbor.bettermvp D/2logger: │              "date":"2018-08-31 13:36",
08-31 06:40:31.575 8672-8785/com.yonbor.bettermvp D/4logger: │              "category":"头条",
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/1logger: │              "author_name":"宇思轩",
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/2logger: │              "url":"http://mini.eastday.com/mobile/180831133603610.html",
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/6logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831_f69b94def04bf257e2d18baf72c86a45_cover_mwpm_03200403.jpg",
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s02":"http://02imgmini.eastday.com/mobile/20180831/20180831_f086007df219a2cd30511697c086ef42_cover_mwpm_03200403.jpg",
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s03":"http://02imgmini.eastday.com/mobile/20180831/20180831_6baabe4a1e45f0b15700b0ffec51ac28_cover_mwpm_03200403.jpg"
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/8logger: │          },
08-31 06:40:31.576 8672-8785/com.yonbor.bettermvp D/4logger: │          {
08-31 06:40:31.577 8672-8785/com.yonbor.bettermvp D/0logger: │              "uniquekey":"d9e23f2576fb3faaad5e01a
08-31 06:40:31.584 8672-8785/com.yonbor.bettermvp D/7logger: │ be0e5fad0",
08-31 06:40:31.584 8672-8785/com.yonbor.bettermvp D/5logger: │              "title":"羽坛名将1米6被国家队拒绝,加入德国成为世界第一",
08-31 06:40:31.584 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:33",
08-31 06:40:31.584 8672-8785/com.yonbor.bettermvp D/9logger: │              "category":"头条",
08-31 06:40:31.588 8672-8785/com.yonbor.bettermvp D/8logger: │              "author_name":"巴蜀蓉城",
08-31 06:40:31.589 8672-8785/com.yonbor.bettermvp D/9logger: │              "url":"http://mini.eastday.com/mobile/180831133301305.html",
08-31 06:40:31.589 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831133301_c7309d71d812a1574c194602866ab603_2_mwpm_03200403.jpg",
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s02":"http://02imgmini.eastday.com/mobile/20180831/20180831133301_c7309d71d812a1574c194602866ab603_3_mwpm_03200403.jpg",
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s03":"http://02imgmini.eastday.com/mobile/20180831/20180831133301_c7309d71d812a1574c194602866ab603_1_mwpm_03200403.jpg"
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/4logger: │          },
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/9logger: │          {
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/3logger: │              "uniquekey":"53f22ba9227fed61f0815ff31beae961",
08-31 06:40:31.590 8672-8785/com.yonbor.bettermvp D/4logger: │              "title":"CBA北京队无情,
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/3logger: │               孙悦会无义转投广东宏远新疆或山东等队吗?",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/5logger: │              "date":"2018-08-31 13:31",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/4logger: │              "category":"头条",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/6logger: │              "author_name":"中山印象",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/4logger: │              "url":"http://mini.eastday.com/mobile/180831133121902.html",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s":"http://01imgmini.eastday.com/mobile/20180831/20180831_6c5aa66bdfd68bb31db1c4b938401ae0_cover_mwpm_03200403.jpg"
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/8logger: │          },
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/3logger: │          {
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/9logger: │              "uniquekey":"069b635eeb174e0fdbdf0f79e0deb7be",
08-31 06:40:31.591 8672-8785/com.yonbor.bettermvp D/0logger: │              "title":"女明星们都在这样穿卫衣,这个秋天你也可以这么美",
08-31 06:40:31.592 8672-8785/com.yonbor.bettermvp D/1logger: │              "date":"2018-08-31 13:31",
08-31 06:40:31.595 8672-8785/com.yonbor.bettermvp D/2logger: │              "category":"头条",
08-31 06:40:31.596 8672-8785/com.yonbor.bettermvp D/3logger: │              "author_name":"时尚圈的天蝎虎",
08-31 06:40:31.596 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831133120584.html",
08-31 06:40:31.597 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s":"http://05imgmini.eastday.com/mobile/20180831/20180831133120_6ce6727062cdc52746a0db2259835ffc_3_mwpm_03200403.jpg",
08-31 06:40:31.597 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s02":"http://05imgmini.eastday.com/mobile/20180831/20180831133120_6ce6727062cdc52746a0db2259835ffc_4_mwpm_03200403.jpg",
08-31 06:40:31.599 8672-8785/com.yonbor.bettermvp D/5logger: │              "thumbnail_pic_s03":"http://05imgmini.eastday.com/mobile/20180831/20180831133120_6ce6727062cdc52746a0db2259835ffc_2_mwpm_03200403.jpg"
08-31 06:40:31.599 8672-8785/com.yonbor.bettermvp D/6logger: │          },
08-31 06:40:31.599 8672-8785/com.yonbor.bettermvp D/1logger: │          {
08-31 06:40:31.600 8672-8785/com.yonbor.bettermvp D/3logger: │              "uniquekey":"f2c057eef21d1989a7b0cea335c71bdf",
08-31 06:40:31.600 8672-8785/com.yonbor.bettermvp D/1logger: │              "title":"29岁女星替父还债嫁给81岁富商,债务还清后立马离婚老头痛哭",
08-31 06:40:31.600 8672-8785/com.yonbor.bettermvp D/2logger: │              "date":"2018-08-31 13:31",
08-31 06:40:31.600 8672-8785/com.yonbor.bettermvp D/3logger: │              "category":"头条",
08-31 06:40:31.606 8672-8785/com.yonbor.bettermvp D/5logger: │              "author_name":"东方头条",
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/6logger: │              "url":"http://mini.eastday.com/mobile/180831133100188.html",
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s":"http://00imgmini.eastday.com/mobile/20180831/20180831_499228ecef2a7880851c8b02afe51295_mwpm_03200403.jpg",
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s02":"http://00imgmini.eastday.com/mobile/20180831/20180831_d0eca4b6a156fb9a423b61c74b2bc4f8_mwpm_03200403.jpg",
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s03":"http://00imgmini.eastday.com/mobile/20180831/20180831_97ba43e0214c78cddf4dd652e35331e0_mwpm_03200403.jpg"
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/8logger: │          },
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/0logger: │          {
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/1logger: │              "uniquekey":"5f047d88c3c63ed0b4b28bd51e265cb0",
08-31 06:40:31.607 8672-8785/com.yonbor.bettermvp D/2logger: │              "title":"绝地求生:实锤?林更新被封号!网友笑称菜鸡挂",
08-31 06:40:31.608 8672-8785/com.yonbor.bettermvp D/7logger: │              "date":"2018-08-31 13:30",
08-31 06:40:31.608 8672-8785/com.yonbor.bettermvp D/8logger: │              "category":"头条",
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/5logger: │              "author_name":"游戏説",
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/8logger: │              "url":"http://mini.eastday.com/mobile/180831133028026.html",
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831133028_60d4f0064baaedb3164b3faa8d35875e_1_mwpm_03200403.jpg",
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s02":"http://02imgmini.eastday.com/mobile/20180831/20180831133028_60d4f0064baaedb3164b3faa8d35875e_3_mwpm_03200403.jpg",
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s03":"http://02imgmini.eastday.com/mobile/20180831/20180831133028_60d4f0064baaedb3164b3faa8d35875e_2_mwpm_03200403.jpg"
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/0logger: │          },
08-31 06:40:31.610 8672-8785/com.yonbor.bettermvp D/8logger: │          {
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/4logger: │              "uniquekey":"688ed5747132f3aa3967c20c34b75c50",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/7logger: │              "title":"曼联5人比法国妖王更有资格签新合同!巴西新晋国脚已获续约一年",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/0logger: │              "date":"2018-08-31 13:30",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/9logger: │              "category":"头条",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/6logger: │              "author_name":"罗米的曼联博客",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/1logger: │              "url":"http://mini.eastday.com/mobile/180831133018132.html",
08-31 06:40:31.611 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s":"http://05imgmini.eastday.com/mobile/20180831/20180831133018_5701dc3ff40961673c88645a9ee86f51_3_mwpm_03200403.jpg",
08-31 06:40:31.612 8672-8785/com.yonbor.bettermvp D/8logger: │              "thumbnail_pic_s02":"http://05imgmini.eastday.com/mobile/20180831/20180831133018_5701dc3ff40961673c88645a9ee86f51_1_mwpm_03200403.jpg",
08-31 06:40:31.616 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s03":"http://05imgmini.eastday.com/mobile/20180831/20180831133018_5701dc3ff40961673c88645a9ee86f51_2
08-31 06:40:31.617 8672-8785/com.yonbor.bettermvp D/2logger: │ _mwpm_03200403.jpg"
08-31 06:40:31.617 8672-8785/com.yonbor.bettermvp D/9logger: │          },
08-31 06:40:31.618 8672-8785/com.yonbor.bettermvp D/6logger: │          {
08-31 06:40:31.618 8672-8785/com.yonbor.bettermvp D/7logger: │              "uniquekey":"a02c92df9bbb0a7f241e22b78e9cbc96",
08-31 06:40:31.618 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"吉利博瑞GE千人交车盛典深圳站落幕",
08-31 06:40:31.621 8672-8785/com.yonbor.bettermvp D/5logger: │              "date":"2018-08-31 13:29",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/7logger: │              "category":"头条",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/3logger: │              "author_name":"光明网",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/8logger: │              "url":"http://mini.eastday.com/mobile/180831132958894.html",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s":"http://03imgmini.eastday.com/mobile/20180831/20180831132958_bade28440ccf8649dd38bfbc82f1d057_1_mwpm_03200403.jpg"
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/1logger: │          },
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/5logger: │          {
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/6logger: │              "uniquekey":"5c97427bb8df50e43585184cc17de514",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"最适合秋天养的3种花,浇水就能活,开花能满盆!",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/5logger: │              "date":"2018-08-31 13:29",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/1logger: │              "category":"头条",
08-31 06:40:31.638 8672-8785/com.yonbor.bettermvp D/2logger: │              "author_name":"养花大全",
08-31 06:40:31.639 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831132957159.html",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s":"http://01imgmini.eastday.com/mobile/20180831/20180831_c20f0ba33adee27168151c79e3cdf403_mwpm_03200403.jpg",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s02":"http://01imgmini.eastday.com/mobile/20180831/20180831_d9b894144242ab63ff021a50f80ebe0f_mwpm_03200403.jpg",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s03":"http://01imgmini.eastday.com/mobile/20180831/20180831_29e286c7b81ae7b0f561f8e0a964d193_mwpm_03200403.jpg"
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/2logger: │          },
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/8logger: │          {
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/5logger: │              "uniquekey":"f9e065a964d7826bf54504d1c3e6897b",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"於之莹:用AI训练有所帮助 希望中国女棋手加把劲",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/9logger: │              "date":"2018-08-31 13:29",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/1logger: │              "category":"头条",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/2logger: │              "author_name":"中国智力运动网",
08-31 06:40:31.640 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831132908819.html",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s":"http://01imgmini.eastday.com/mobile/20180831/20180831132908_325a05bbfc96cbe1a16bcf384175ccc8_1_mwpm_03200403.jpg",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s02":"http://01imgmini.eastday.com/mobile/20180831/20180831132908_325a05bbfc96cbe1a16bcf384175ccc8_2_mwpm_03200403.jpg"
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/2logger: │          },
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/3logger: │          {
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/6logger: │              "uniquekey":"7e98989d1c89c767b28ef4bdf137aec5",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"125→30人!美巡季后赛厮杀激烈 伍兹力保清新状态",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/1logger: │              "date":"2018-08-31 13:29",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/7logger: │              "category":"头条",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/0logger: │              "author_name":"新浪体育",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831132908375.html",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s":"http://04imgmini.eastday.com/mobile/20180831/20180831132908_2c773f1f7e29a4b67a95134d05b2294f_1_mwpm_03200403.jpg",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s02":"http://04imgmini.eastday.com/mobile/20180831/20180831132908_2c773f1f7e29a4b67a95134d05b2294f_2_mwpm_03200403.jpg",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s03":"http://04imgmini.eastday.com/mobile/20180831/20180831132908_2c773f1f7e29a4b67a95134d05b2294f_3_mwpm_03200403.jpg"
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/2logger: │          },
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/6logger: │          {
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/4logger: │              "uniquekey":"55946e68fb6c2967749a56bf2f2f762d",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"街拍:美女穿皮裙上街,开叉设计,微胖的身材,很是吸睛",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/4logger: │              "date":"2018-08-31 13:26",
08-31 06:40:31.641 8672-8785/com.yonbor.bettermvp D/1logger: │              "category":"头条",
08-31 06:40:31.642 8672-8785/com.yonbor.bettermvp D/5logger: │              "author_name":"简小爱Jane",
08-31 06:40:31.642 8672-8785/com.yonbor.bettermvp D/6logger: │              "url":"http://mini.eastday.com/mobile/180831132635930.html",
08-31 06:40:31.642 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s":"http://04imgmini.eastday.com/mobile/20180831/20180831_5dc9dbf4f348ec50db2f746f7b110f72_cover_mwpm_03200403.jpg",
08-31 06:40:31.642 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s02":"http://04imgmini.eastday.com/mobile/20180831/20180831_7d0ec83f7055d1f4dd342b099fabe8e5_cover_mwpm_03200403.jpg",
08-31 06:40:31.642 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s03":"http://04imgmini.eastday.com/mobile/20180831/20180831_8d577af0ee7a859b00761c7966348ba4_cover_mwpm_03200403.jpg"
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/7logger: │          },
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/6logger: │          {
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/5logger: │              "uniquekey":"90c2ffaaacd71dc06a07e577a8322515",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/6logger: │              "title":"未来三个月,这些生肖事业财运双丰收,宜求财",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/5logger: │              "date":"2018-08-31 13:25",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/6logger: │              "category":"头条",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/4logger: │              "author_name":"宇思轩",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/7logger: │              "url":"http://mini.eastday.com/mobile/180831132527051.html",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s":"http://07imgmini.eastday.com/mobile/20180831/20180831_34c027abff0052a5df0616b77307883f_cover_mwpm_03200403.jpg",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/6logger: │              "thumbnail_pic_s02":"http://07imgmini.eastday.com/mobile/20180831/20180831_4f94623971c98797f345386b4c381c3e_cover_mwpm_03200403.jpg",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s03":"http://07imgmini.eastday.com/mobile/20180831/20180831_ca9036df31577b3b7fe8b7e3ee54d6ae_cover_mwpm_03200403.jpg"
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/4logger: │          },
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/3logger: │          {
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/6logger: │              "uniquekey":"a4f70600a69b0c81882d44ae3f900a38",
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/0logger: │              "title":"新鲜出炉!火箭勇士首发阵容2K值对比,差距令�
08-31 06:40:31.643 8672-8785/com.yonbor.bettermvp D/8logger: │ ��意外",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/7logger: │              "date":"2018-08-31 13:23",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/0logger: │              "category":"头条",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/2logger: │              "author_name":"Dear篮球",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/4logger: │              "url":"http://mini.eastday.com/mobile/180831132359433.html",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831_bac689fe8bc1eccda316164996fa7e90_cover_mwpm_03200403.jpg",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s02":"http://02imgmini.eastday.com/mobile/20180831/20180831_8fe576befc6c8d373c8bfd7b2106fafc_cover_mwpm_03200403.jpg",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/7logger: │              "thumbnail_pic_s03":"http://02imgmini.eastday.com/mobile/20180831/20180831_2924269e1fb20e8b7215c5555574dcaf_cover_mwpm_03200403.jpg"
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/6logger: │          },
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/0logger: │          {
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/5logger: │              "uniquekey":"8dc5265b6bd0385b2b23508e6f1eed95",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/0logger: │              "title":"亚运田径赛场收官,中国连续9届称霸,网友:还存在诸多问题",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/8logger: │              "date":"2018-08-31 13:23",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/3logger: │              "category":"头条",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/9logger: │              "author_name":"体坛情报站",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/7logger: │              "url":"http://mini.eastday.com/mobile/180831132356975.html",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/3logger: │              "thumbnail_pic_s":"http://04imgmini.eastday.com/mobile/20180831/20180831132356_1297cca049bf6be5e6888a130f379093_3_mwpm_03200403.jpg",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s02":"http://04imgmini.eastday.com/mobile/20180831/20180831132356_1297cca049bf6be5e6888a130f379093_4_mwpm_03200403.jpg",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s03":"http://04imgmini.eastday.com/mobile/20180831/20180831132356_1297cca049bf6be5e6888a130f379093_2_mwpm_03200403.jpg"
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/3logger: │          },
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/4logger: │          {
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/5logger: │              "uniquekey":"056b81d894a6e617e2b7f08738a83315",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/2logger: │              "title":"宁波武警举行退伍老兵向队旗告别仪式 ",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:23",
08-31 06:40:31.644 8672-8785/com.yonbor.bettermvp D/5logger: │              "category":"头条",
08-31 06:40:31.645 8672-8785/com.yonbor.bettermvp D/8logger: │              "author_name":"光明网",
08-31 06:40:31.645 8672-8785/com.yonbor.bettermvp D/0logger: │              "url":"http://mini.eastday.com/mobile/180831132343682.html",
08-31 06:40:31.672 8672-8785/com.yonbor.bettermvp D/8logger: │              "category":"头条",
08-31 06:40:31.672 8672-8785/com.yonbor.bettermvp D/9logger: │              "author_name":"海外网",
08-31 06:40:31.674 8672-8785/com.yonbor.bettermvp D/0logger: │              "url":"http://mini.eastday.com/mobile/180831131843281.html",
08-31 06:40:31.675 8672-8785/com.yonbor.bettermvp D/1logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831131843_42ec6a603b09936aa1a83d325d7c1c6d_1_mwpm_03200403.jpg"
08-31 06:40:31.675 8672-8785/com.yonbor.bettermvp D/9logger: │          },
08-31 06:40:31.676 8672-8785/com.yonbor.bettermvp D/0logger: │          {
08-31 06:40:31.676 8672-8785/com.yonbor.bettermvp D/7logger: │              "uniquekey":"15563cf70b4d9f08bad21b1d85049967",
08-31 06:40:31.676 8672-8785/com.yonbor.bettermvp D/8logger: │              "title":"阳台种上这5种蔬菜,边掐边长,一年都吃不完!",
08-31 06:40:31.676 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:15",
08-31 06:40:31.676 8672-8785/com.yonbor.bettermvp D/4logger: │              "category":"头条",
08-31 06:40:31.679 8672-8785/com.yonbor.bettermvp D/6logger: │              "author_name":"装修找怡妈",
08-31 06:40:31.679 8672-8785/com.yonbor.bettermvp D/5logger: │              "url":"http://mini.eastday.com/mobile/180831131559321.html",
08-31 06:40:31.679 8672-8785/com.yonbor.bettermvp D/6logger: │              "thumbnail_pic_s":"http://00imgmini.eastday.com/mobile/20180831/20180831131559_d26d13c633e87890d65f2e1568aa0797_5_mwpm_03200403.jpg",
08-31 06:40:31.680 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s02":"http://00imgmini.eastday.com/mobile/20180831/20180831131559_d26d13c633e87890d65f2e1568aa0797_4_mwpm_03200403.jpg",
08-31 06:40:31.680 8672-8785/com.yonbor.bettermvp D/2logger: │              "thumbnail_pic_s03":"http://00imgmini.eastday.com/mobile/20180831/20180831131559_d26d13c633e87890d65f2e1568aa0797_1_mwpm_03200403.jpg"
08-31 06:40:31.680 8672-8785/com.yonbor.bettermvp D/1logger: │          },
08-31 06:40:31.680 8672-8785/com.yonbor.bettermvp D/2logger: │          {
08-31 06:40:31.687 8672-8785/com.yonbor.bettermvp D/1logger: │              "uniquekey":"11bb2db63662262cb566246399840fb9",
08-31 06:40:31.689 8672-8785/com.yonbor.bettermvp D/4logger: │              "title":"霍建华直言不喜欢一个童星,鲁豫听后赶紧圆场,网友:情商太低了",
08-31 06:40:31.702 8672-8785/com.yonbor.bettermvp D/3logger: │              "date":"2018-08-31 13:15",
08-31 06:40:31.702 8672-8785/com.yonbor.bettermvp D/7logger: │              "category":"头条",
08-31 06:40:31.702 8672-8785/com.yonbor.bettermvp D/6logger: │              "author_name":"北青网",
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/0logger: │              
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/1logger: │ "url":"http://mini.eastday.com/mobile/180831131528233.html",
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/4logger: │              "thumbnail_pic_s":"http://02imgmini.eastday.com/mobile/20180831/20180831131528_f10ee6d7d89f771484446aec23fe1eed_6_mwpm_03200403.jpg",
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/9logger: │              "thumbnail_pic_s02":"http://02imgmini.eastday.com/mobile/20180831/20180831131528_f10ee6d7d89f771484446aec23fe1eed_5_mwpm_03200403.jpg",
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/0logger: │              "thumbnail_pic_s03":"http://02imgmini.eastday.com/mobile/20180831/20180831131528_f10ee6d7d89f771484446aec23fe1eed_1_mwpm_03200403.jpg"
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/3logger: │          }
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/6logger: │      ]
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/2logger: │  },
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/8logger: │  "error_code":0
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/4logger: │ }
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/5logger: │ <-- END HTTP (18871-byte body)
08-31 06:40:31.703 8672-8785/com.yonbor.bettermvp D/0logger: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────

通过这样的方式打印出来的网络请求日志包含了所有的网络信息, 并且结构层次非常清晰。
源码:https://github.com/yonbor605/Android-BetterMVP 欢迎star

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值