code: public int replaceListener(String url, String path, FileDownloadListener listener) {
          return replaceListener(FileDownloadUtils.generateId(url, path), listener);
      }
docs: Find the running task by {@code url} and {@code path}, and replace its listener with
  the new one {@code listener}.
  
  @return The target task's DownloadId, if not exist target task, and replace failed, will be 0
  @see #replaceListener(String, FileDownloadListener)
  @see #replaceListener(int, FileDownloadListener)