java - 方法调用可能产生 NullPointerException Retrofit Body

标签 java android retrofit retrofit2

我正在使用 Retrofit 2 从我的 API 获取响应并将其值存储在我的常量中,如下所示

if(response.isSuccessful()) {
                    constant.banner_on = response.body().getBanner_on();
                    constant.int_on = response.body().getInt_on();
                    constant.int_click = response.body().getInt_click();
                }

它给了我以下所有三个警告

Method invocation getBanner_on may produce java.lang.nullPointerException

我很困惑,无法解决这个警告。让我知道是否有人可以帮助我摆脱困境。

最佳答案

这只是一个警告,因为如果响应成功,它永远不会为空。您可以忽略它或环绕 if(response.body() != null) 以删除警告。

Ads ads = response.body();
if(ads != null){
    constant.banner_on = ads.getBanner_on();
    // and so on.
}

关于java - 方法调用可能产生 NullPointerException Retrofit Body,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46519388/

相关文章:

android - Android VideoView 是否缓存流式视频?

java - 如何在 Retrofit 上上传没有 header 和容器的文件

java - 如何在构造函数上使用 lombok 的 @Tolerate

java - 如何用zabbix api和java匹配所有触发器

java - 如何检查 Java 程序是否保持打开文件句柄?

php - 如何使用 Retrofit android 直接调用函数 php

android - 'com.google.code.gson:gson:2.6.1' 依赖在 retrofit 2 自带 gson 转换器的情况下有什么作用?

java - Apache POI : Indexed Color from AWT Color input

android - 将play-services-maps从10.0.1降级为(9.6.1,9.8.0)会导致app:transformClassesWithDexForDebug

android - Android 5.0 (API 21) 上的 Drawable setHotspot 的用途是什么?