如果有辅助方法返回Task对象,则不能使用continueWith()或onSuccess(),因为Bolts代码不会将其视为Task并等待其执行.它会将Task视为一个简单的数据结果.
基本上,这不起作用,因为此链的结果任务是任务< Task< Void>>:
update().onSuccess(new Continuation>()
{
public Task then(Task task) throws Exception
{
return Task.delay(3000);
}
}) // this end returns a Task>
但这将起作用,链将返回任务< Void>:
update().onSuccessTask(new Continuation>()
{
public Task then(Task task) throws Exception
{
return Task.delay(3000);
}
}) // this end returns a Task