Join us on the livestream at Android Dev Summit on 7-8 November 2018, starting at 10AM PDT!

Task

public abstract class Task
extends Object

java.lang.Object
   ↳ com.google.android.play.core.tasks.Task<TResult>


Represents an asynchronous operation.

Summary

Public constructors

Task()

Public methods

abstract Task<TResult> addOnCompleteListener(OnCompleteListener<TResult> listener)

Adds a listener that is called when the Task completes.

abstract Task<TResult> addOnCompleteListener(Executor executor, OnCompleteListener<TResult> listener)

Adds a listener that is called when the Task completes.

abstract Task<TResult> addOnFailureListener(Executor executor, OnFailureListener listener)

Adds a listener that is called if the Task fails.

abstract Task<TResult> addOnFailureListener(OnFailureListener listener)

Adds a listener that is called if the Task fails.

abstract Task<TResult> addOnSuccessListener(Executor executor, OnSuccessListener<? super TResult> listener)

Adds a listener that is called if the Task completes successfully.

abstract Task<TResult> addOnSuccessListener(OnSuccessListener<? super TResult> listener)

Adds a listener that is called if the Task completes successfully.

abstract Exception getException()

Returns the exception that caused the Task to fail.

abstract TResult getResult()

Gets the result of the Task, if it has already completed.

abstract <X extends Throwable> TResult getResult(Class<X> exceptionType)

Gets the result of the Task, if it has already completed.

abstract boolean isComplete()

Returns true if the Task is complete; false otherwise.

abstract boolean isSuccessful()

Returns true if the Task has completed successfully; false otherwise.

Inherited methods

From class java.lang.Object

Public constructors

Task

Task ()

Public methods

addOnCompleteListener

Task<TResult> addOnCompleteListener (OnCompleteListener<TResult> listener)

Adds a listener that is called when the Task completes.

The listener will be called on main application thread. If the Task is already complete, a call to the listener will be immediately scheduled. If multiple listeners are added, they will be called in the order in which they were added.

Parameters
listener OnCompleteListener

Returns
Task<TResult> this Task

addOnCompleteListener

Task<TResult> addOnCompleteListener (Executor executor, 
                OnCompleteListener<TResult> listener)

Adds a listener that is called when the Task completes.

If the Task is already complete, a call to the listener will be immediately scheduled. If multiple listeners are added, they will be called in the order in which they were added.

Parameters
executor Executor: the executor to use to call the listener

listener OnCompleteListener

Returns
Task<TResult> this Task

addOnFailureListener

Task<TResult> addOnFailureListener (Executor executor, 
                OnFailureListener listener)

Adds a listener that is called if the Task fails.

If the Task has already failed, a call to the listener will be immediately scheduled. If multiple listeners are added, they will be called in the order in which they were added.

Parameters
executor Executor: the executor to use to call the listener

listener OnFailureListener

Returns
Task<TResult> this Task

addOnFailureListener

Task<TResult> addOnFailureListener (OnFailureListener listener)

Adds a listener that is called if the Task fails.

The listener will be called on main application thread. If the Task has already failed, a call to the listener will be immediately scheduled. If multiple listeners are added, they will be called in the order in which they were added.

Parameters
listener OnFailureListener

Returns
Task<TResult> this Task

addOnSuccessListener

Task<TResult> addOnSuccessListener (Executor executor, 
                OnSuccessListener<? super TResult> listener)

Adds a listener that is called if the Task completes successfully.

If multiple listeners are added, they will be called in the order in which they were added. If the Task has already completed successfully, a call to the listener will be immediately scheduled.

Parameters
executor Executor: the executor to use to call the listener

listener OnSuccessListener

Returns
Task<TResult> this Task

addOnSuccessListener

Task<TResult> addOnSuccessListener (OnSuccessListener<? super TResult> listener)

Adds a listener that is called if the Task completes successfully.

The listener will be called on the main application thread. If the Task has already completed successfully, a call to the listener will be immediately scheduled. If multiple listeners are added, they will be called in the order in which they were added.

Parameters
listener OnSuccessListener

Returns
Task<TResult> this Task

getException

Exception getException ()

Returns the exception that caused the Task to fail. Returns null if the Task is not yet complete, or completed successfully.

Returns
Exception

getResult

TResult getResult ()

Gets the result of the Task, if it has already completed.

Returns
TResult

Throws
IllegalStateException if the Task is not yet complete
RuntimeExecutionException if the Task failed with an exception

getResult

TResult getResult (Class<X> exceptionType)

Gets the result of the Task, if it has already completed.

Parameters
exceptionType Class

Returns
TResult

Throws
IllegalStateException if the Task is not yet complete
if the Task failed with an exception of type X
RuntimeExecutionException if the Task failed with an exception that was not of type X
Throwable

isComplete

boolean isComplete ()

Returns true if the Task is complete; false otherwise.

Returns
boolean

isSuccessful

boolean isSuccessful ()

Returns true if the Task has completed successfully; false otherwise.

Returns
boolean