dependencies { implementation 'com.google.android.gms:play-services-tasks:17.1.0' } Task<Void> task1 = Tasks.call(new MyHttpRequest1()); Task<Void> task2 = Tasks.call(new MyHttpRequest2()); Tasks.whenAll(task1, task2).addOnSuccessListener(new OnSuccessListener<Void>() { @Override public void onSuccess(Void aVoid) { } }); class MyAsyncTask implements Callable<Void> { @Override public Void call() throws Exception { return null; } } Task<Void> task = Tasks.call(new MyAsyncTask()); task.addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { if (task.isSuccessful()) { } else { } } }); Task<Void> task1 = Tasks.call(new MyHttpRequest1()); Task<Void> task2 = task1.continueWith(new Continuation<Void, Task<Void>>() { @Override public Task<Void> then(@NonNull Task<Void> task) throws Exception { if (task.isSuccessful()) { return Tasks.call(new MyHttpRequest2()); } else { return Tasks.forException(task.getException()); } } }); task2.addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { if (task.isSuccessful()) { } else { } } }); Task<String> task1 = Tasks.call(new MyHttpRequest1()); Task<Integer> task2 = task1.continueWith(new Continuation<String, Integer>() { @Override public Integer then(@NonNull Task<String> task) throws Exception { if (task.isSuccessful()) { String result = task.getResult(); return result.length(); } else { return -1; } } }); task2.addOnCompleteListener(new OnCompleteListener<Integer>() { @Override public void onComplete(@NonNull Task<Integer> task) { if (task.isSuccessful()) { int result = task.getResult(); } else { } } });


上一篇:
下一篇:
切换中文