API Interfaces dürfen andere Interfaces nicht erweitern. Retrofit 2

9

Ich habe das nächste Problem mit Retrofit 2 Beta 2:

%Vor%

Dies liegt daran, dass ich wie folgt eine Schnittstelle für die API von Retrofit habe:

%Vor%

Zum Beispiel ist einer von ihnen dieser:

%Vor%

Und dann habe ich drei andere Schnittstellen, die drei von dieser RetrofitBaseAPI-Schnittstelle.

Wenn ich versuche, die retrofit.create (Class-Klasse) mit der angegebenen Schnittstelle aufzurufen, erhalte ich immer diesen Fehler.

Soweit ich gelesen habe, ist die einzige Lösung, drei unabhängige Schnittstellen zu erstellen. Ist es wahr? Kennt jemand eine andere Lösung?

Ich finde ein bisschen komisch, dass wir Code duplizieren müssen, aber gut, vielleicht gibt es einen Grund, den ich nicht verstehe .....

Vielen Dank im Voraus!

Danke,

EDIT: Gleiches Problem mit der finalen Version von Retrofit 2. Ich denke, es ist eine Einschränkung von Retrofit ....

    
zapotec 09.12.2015, 14:25
quelle

1 Antwort

12

Es ist nicht möglich, eine Basis-Retrofit-Schnittstelle zu haben.

JakeWharton :

  

Retrofit begünstigt Komposition über Vererbung. Eine Schnittstelle pro Service.

Wie Sie bereits herausgefunden haben, besteht die einzige Lösung darin, drei unabhängige Schnittstellen zu erstellen.

    
naXa 15.06.2016, 08:30
quelle

Tags und Links