Java 改装2个顺序柱

Java 改装2个顺序柱,java,android,retrofit2,Java,Android,Retrofit2,我正在学习改装2。在我的应用程序中“UploadToServer” 我需要按顺序调用三个异步任务: 1.发布用户名并获取用户名。 2.发布地理位置和其他一些字符串数据,并返回“报告票证号”。 3.张贴一张jpg图片以及票号。 我的服务器上运行着一个web服务 在标准的手工编码Java中,我会使用一个活套或类似的东西。 如何使用改装2实现这一点?哦,我想有一个进度条移动,特别是当上传jpg图像文件 谢谢。您可以使用回调链接呼叫: OkHttpClient client = new OkHt

我正在学习改装2。在我的应用程序中“UploadToServer” 我需要按顺序调用三个异步任务: 1.发布用户名并获取用户名。 2.发布地理位置和其他一些字符串数据,并返回“报告票证号”。 3.张贴一张jpg图片以及票号。 我的服务器上运行着一个web服务

在标准的手工编码Java中,我会使用一个活套或类似的东西。 如何使用改装2实现这一点?哦,我想有一个进度条移动,特别是当上传jpg图像文件


谢谢。

您可以使用回调链接呼叫:

    OkHttpClient client = new OkHttpClient.Builder().build();

    Retrofit retrofit = new Retrofit.Builder()
                    .baseUrl(BASE_URL_WEBAPI)
                    .addConverterFactory(GsonConverterFactory.create())
                    .client(client)
                    .build();

    mService = retrofit.create(IWebApi.class);
    ...
    mService.first_operation(...params...).enqueue(callback); 
回调是一个类的实例,该类需要第一个\u操作的结果。如果第一个\u操作成功,则调用第二个\u方法

    public class Example implements Callback<void> {

       @Override
       public void onResponse(Response<LoginResponse> response) {
          second_method();
       }

       @Override
       public void onFailure(Throwable t) {        
           t.printStackTrace();
       }
}
    mProgressDialog = ProgressDialog.show(this, getString(R.string.wait_plaease),
            getString(R.string.executing_action), true);