onCanceled method

  1. @protected
FutureOr<bool> onCanceled(
  1. T data
)

任务被取消时调用

data为本次任务执行周期中的数据包装类,由onCreateWorkData创建。

  • 在任务被取消后执行,即用户调用了WorkFuture.cancel

  • 该方法在onFinished之前被调用。

  • 该方法与onFailed互斥。

  • 返回值为是否重新执行本次请求,如果为true,则本次请求结果将不会从start调用点处返回,而是丢弃本次结果然后重新执行start方法后在调用点处返回。

  • 当返回true时要注意避免进入无限重请求循环,onMaxRestart可以限制最大重试次数。

  • 此处的重启不同于start中的retry参数,两者互不干扰同时生效。

  • retry参数仅表示最终网络请求的重试次数,重试期间不会执行其它work的生命周期函数。

  • 此处的重启表示work本身的重新启动,每次重启与首次执行start方法的参数和流程相同。

Implementation

@protected
FutureOr<bool> onCanceled(T data) => false;