【问题标题】:How to use Retrofit in android studio? and what is my problem?如何在 android studio 中使用 Retrofit?我的问题是什么?
【发布时间】:2021-07-18 08:09:58
【问题描述】:

我在“TestService.java”中做了这样的界面

  public interface TestService {
        @GET("/api/users/2")
        Call<String> getTest();
    }

“RetrofitClient.java”

public class RetrofitClient {
    private  static Retrofit instance;

    public static Retrofit getInstance() {
        if(instance == null)
            instance = new Retrofit.Builder()
                    .baseUrl("https://reqres.in/")
                    .build();
        return instance;
    }
}

在“MainActivity.java”中

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Retrofit retrofitClient = RetrofitClient.getInstance();
        TestService testService =  retrofitClient.create(TestService.class);
        Call<String> repos = testService.getTest(); //problem

    }
}

我是android java的第一个,我不知道如何使用Retrofit.. 有什么问题以及如何打印响应? (我还需要标题信息)

【问题讨论】:

    标签: java android-studio retrofit retrofit2


    【解决方案1】:

    你需要在主线程上异步调用它。

        Call<ResponseBody> repos = testService.getTest();
    
        repos.enqueue(new Callback<ResponseBody>() {
            @Override
            public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
               //response
            }
    
            @Override
            public void onFailure(Call<ResponseBody> call, Throwable t) {
               //error
            }
        });
    

    网上资源很多,想了解更多可以看下面的文章。

    vogella

    android.jlelse

    【讨论】:

    • response.getHeaders()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-30
    相关资源
    最近更新 更多