2016-12-21 1 views
0

API 인터페이스개조 - 개조로 작성하는 방법에 대한 설명

public interface YourUsersApi { 
    @GET("/name/{name}") 
    public void getName(@Path("name") String user, Callback<pojo> response); 

    @GET("/gender/{gender}") 
    public void getName(@Path("gender") String user, Callback<pojo> response); 
} 

MainActivity

RestAdapter restAdapter = new RestAdapter.Builder() 
.setEndpoint("https://yourserveraddress.com").build(); 
YourUsersApi yourUsersApi = restAdapter.create(YourUsersApi.class); 

나는 "https://yourserveraddress.com/users/matthew"나는 MainActivity에이 코드를 추가 액세서하려면 :

  git.getPlaces(KEY, new Callback<pojo>() { 
       @Override 
       public void success(pojo pojo, Response response) { 
        Log.d("test1", "success"); 
       } 

       @Override 
       public void failure(RetrofitError error) { 
        Log.d("test1", error.toString()); 
       } 
      }); 

두 가지 문제가 있지만 발생 :

  1. 나는 "https://yourserveraddress.com/users/matthew/gender/male을"액세서하려면 내가 할 것 어떻게

    ? interface methods을 함께 연결해야합니까, 아니면 일종의 연결해야합니까?

  2. interface methods을 작성하는 데 효율적인 방법이 있습니까? 나는 각각을 위해 anonymous class를 만드는 것이 비효율적이라고 느낀다.

+0

* 어떤 방식을? 왜 그렇게 생각하니? – shmosel

답변

0

개조를 사용할 수있는 방법은 여러 가지가 있습니다. 익명의 클래스를 사용하지 않으려면 아래 코드를 따르십시오. 이를 위해

API 인터페이스

@GET("/name/{name}") 
public Pojo GetName (@Path ("name") String user); 

final Pojo pojo = git.getPlaces(KEY); 

당신이 링크에서 그것에 대해 더 생각 얻을 수 있습니다. https://medium.com/@shelajev/how-to-make-http-calls-on-android-with-retrofit-2-cfc4a67c6254#.llvydsa8a 나는 각자가 비효율적에 대한 익명의 클래스를 만드는 것 같은 느낌 *

+0

정보를 제공해 주셔서 감사합니다. 내 첫 번째 질문에 대해서는, 위의 두 인터페이스 방법을 감안할 때 "https://yourserveraddress.com/users/matthew/gender/male"에 액세스하는 방법을 알고 있습니까? –

+0

질문이 없습니다. 자세히 말씀해주십시오. –

관련 문제