设置 okhttp LoggingInterceptor 的日志级别已被弃用。

17

'setLevel(okhttp3.logging.HttpLoggingInterceptor.Level)'已经被弃用

应该使用什么方法来替代setLevel以解决弃用问题?

3个回答

40
根据文档“已移至var。使用level(...)替换setLevel(...)以修复Java”,在Java中,将setLevel(...)替换为level(...)将解决此问题。
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
logging.level(HttpLoggingInterceptor.Level.BODY);

在 Kotlin 中

val logging = HttpLoggingInterceptor()
logging.level = HttpLoggingInterceptor.Level.BODY

愉快编码 :)


2
在 Kotlin 中相同的代码:val logging = HttpLoggingInterceptor() logging.level = HttpLoggingInterceptor.Level.BODY - Andrei Drynov

0
对于 Kotlin,使用 apply 函数,然后使用 level 属性设置 setLevel。
 private val loggingInterceptor = HttpLoggingInterceptor().apply {
        level = HttpLoggingInterceptor.Level.BODY
    }

    var client : OkHttpClient = OkHttpClient.Builder().addInterceptor(loggingInterceptor).build()

1
请不要仅仅发布代码作为答案,而是提供一个解释你的代码是如何解决问题的。带有解释的答案通常具有更高的质量,并且更有可能吸引赞同。 - Mark Rotteveel

0

Kotlin编程语言

替换为:

val logger: HttpLoggingInterceptor =
HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY)  //Logging Interceptor

使用:

val logger = HttpLoggingInterceptor()
logger.level = HttpLoggingInterceptor.Level.BODY

将您的拦截器添加到okHttpClient

val okkHttpclient = OkHttpClient.Builder()
                .addInterceptor(networkConnectionInterceptor)
                .addInterceptor(logger)
                .build()

编程愉快...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接