1

这是我的程序流程:

  1. 我可以创建一个学习会话,在此会话中,用户可以流式传输视频,和/或下载附件,和/或以多项选择格式回答问题。

  2. 因此,在一个会话中,它可以包含视频和/或文件和/或问题。

  3. 在创建会话的过程中,我必须完成所有视频和/或文件的上传任务,并完成所有数据库任务保存该会话的问题,然后才能将会话保存到数据库中。在这种情况下,我使用类似这样的东西Tasks.whenAll(listTask),在其中添加onCompleteListener到最终任务,最终将会话保存到数据库。

  4. 几乎所有工作都按预期工作,已保存问题,已上传视频,但UploadTask上传视频后返回的问题存在问题。在我的Session课堂上,我有videoUrl一个包含视频网址的字段。为了获取视频的 url,我必须添加onCompleteListener到 my UploadTask,从任务结果中获取 url 并将 url 保存在我的类实例中。但是,视频 url 永远不会保存到数据库中,因为onCompleteListener最终任务首先被调用。

我的问题是,如何执行 Tasks.whenAll(listTask),当 listTask 中的所有任务都完成时,它们的 onCompleteListener 也完成了?

4

0 回答 0