我想知道如何创建一个可以在两个端点之间切换的RestAdapter。当前在我的应用程序中,RestAdapter是在Application类(单个)中创建的。我正在寻找一种无需实际创建多个RestAdapter即可拥有不同端点的方法。

最佳答案

Retrofit 1为每个请求调用Endpoint(无缓存),您只需要使用某些setter扩展Retrofit.Endpoint并在创建RestAdapter时传递此Endpoint即可:

Endpoint mDynamicEndpoint = new DynamicEndpoint("http://firstdomain.fr");
RestAdapter restAdapter = new RestAdapter.Builder()
    .setEndpoint(mDynamicEndpoint)
    .build();

mDynamicEndpoint.setBaseUrl("http://yourdomain.com");

可能重复:Dynamic Paths in Retrofit

10-06 10:24