Android 改造2:如果服务器响应正常而GSON没有';不报告任何解析问题?

Android 改造2:如果服务器响应正常而GSON没有';不报告任何解析问题?,android,gson,retrofit2,Android,Gson,Retrofit2,为什么这里的pricenull 从中检索JSON(您也可以使用多个参数,这就是为什么下面的对象使用Maps;)。这是一张硬币的价格: public class CoinGeckoCoinPrice { @Expose private Map<String, Map<String, Double>> price; public double getPrice(String slug, String pair) { ... }

为什么这里的
price
null

从中检索JSON(您也可以使用多个参数,这就是为什么下面的对象使用
Map
s;)。这是一张硬币的价格:

public class CoinGeckoCoinPrice {
    @Expose
    private Map<String, Map<String, Double>> price;

    public double getPrice(String slug, String pair) {
        ...
    }
}

但是我想包装这个对象,这样我就可以在
CoingEckoInPrice
类中编写数据检索函数。

您要返回的Json没有
price
属性,所以Gson不知道它应该解析
比特币
对象及其美元价格到该对象。鉴于您返回的数据可以是任何密钥(如比特币、以太坊…),其属性也可以是任何密钥(如美元、欧元…),您需要通过向Gson提供自定义适配器来手动解析此数据

您要返回的Json上没有
price
属性,因此Gson不知道它应该解析
比特币
对象及其美元价格。鉴于您返回的数据可以是任何密钥(如比特币、以太坊…),其属性也可以是任何密钥(如美元、欧元…),您需要通过向Gson提供自定义适配器来手动解析此数据

@GET("/api/v3/simple/price")
Call<CoinGeckoCoinPrice> getCoinPrice(@Query("ids") String coinSlugs, @Query("vs_currencies") String pairs);
@GET("/api/v3/simple/price")
Call<JsonObject> getCoinPrice(@Query("ids") String coinSlugs, @Query("vs_currencies") String pairs);