validateEagerly()(Retrofit 2.0 beta 2)方法到底能做什么?
在哪里可以使用此方法?

JavaDoc表示When calling create on the resulting Retrofit instance, eagerly validate the configuration of all methods in the supplied interface.,但此描述不太清楚。

最佳答案

validateEagerly()验证在构建Retrofit实例时提供的配置。这将检查您的接口注释中是否存在有效的Retrofit注释,检查参数和方法参数(如果它们与注释集一致),还将检查可能的错误方法返回类型(不同于Call<T>)。

通常在构建Retrofit实例之前调用检查。

private Retrofit getRetrofit() {
        OkHttpClient okClient = getOkHttpClient();
        GsonBuilder builder = getGsonBuilder();
        Retrofit.Builder retrofitBuilder = new Retrofit.Builder();
        retrofitBuilder.client(okClient);
        retrofitBuilder.baseUrl(API_ENDPOINT);
        retrofitBuilder.addConverterFactory(GsonConverterFactory.create(builder.create()));
        retrofitBuilder.validateEagerly();
        return retrofitBuilder.build();
    }


如果某些内容无效,它会抛出IllegalArgumentException并显示不同的消息并引起原因。

07-24 09:48