2017-01-05 11 views
0

私はキャッシュのあるRetrofitインスタンスが必要ですが、ほとんどの場合、デフォルトのRetrofitインスタンスを使用しています。OkHttpクライアントを使用する必要がありますが、コードを複製せずに2つのインスタンスを使用するエレガントな方法が必要です。OOPでは、大きなプロジェクトで2つの異なるRetrofit実装を使用するベストプラクティスは何ですか?

これを処理するにはDaggerを使用すると思っていましたが、これは古いプロジェクトであり、一度に1つずつ部分的に強化しようとしています。

答えて

0

Retrofitの2つのインスタンスを作成するだけです。 1つはキャッシュなしの&です。

public static <S> S createService(Class<S> yourApiClass) { 

     Retrofit retrofit = builder.client(httpClient.build()).build(); 
     return return retrofit.create(yourApiClass); 

    } 

public static <S> S createServiceWithCache(Class<S> yourApiClass) { 

      //add your cache logic here 
      return return retrofit.create(yourApiClass); 

     } 
関連する問題