implementation 'com.google.android.gms:play-services-tasks:17.2.0'
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
public class AsyncTaskManager {
public void executeAsyncTask() {
Task<String> task = Tasks.call(new Callable<String>() {
@Override
public String call() throws Exception {
return fetchDataFromNetwork();
}
});
task.addOnCompleteListener(task -> {
if (task.isSuccessful()) {
String data = task.getResult();
processData(data);
} else {
Exception e = task.getException();
handleException(e);
}
});
}
private String fetchDataFromNetwork() {
return "Some data from network";
}
private void processData(String data) {
System.out.println(data);
}
private void handleException(Exception e) {
e.printStackTrace();
}
}