Tải nội dung nghe nhìn xuống

Tính năng tải nội dung nghe nhìn có thể tiếp tục xuống đã là một tính năng trong thư viện ứng dụng .NET API của Google kể từ phiên bản 1.4.0-beta. Thư viện dành riêng cho API của Google chứa các phương thức thuận tiện để tương tác với tính năng này.

Giao thức tải nội dung nghe nhìn có thể tiếp tục tương tự như giao thức tải nội dung nghe nhìn lên tiếp nối được mô tả, ví dụ: trên trang tải nội dung nghe nhìn lên cho API Drive.

Lớp quan tâm chính là MediaDownloader. Trong quá trình triển khai tính năng tải nội dung nghe nhìn có thể tiếp tục xuống này, nội dung nghe nhìn sẽ được tải xuống theo phân đoạn (kích thước phân đoạn có thể định cấu hình).

Mã mẫu

Nếu các phương thức trong thư viện dành riêng cho API chứa dữ liệu "supportsMediaDownload" trong tài liệu Khám phá, thì DownloadDownloadAsync có sẵn trong lớp yêu cầu. Các phương thức đó tải dữ liệu đa phương tiện xuống Stream mà bạn cung cấp. Ví dụ:
{
    // Create the service using the client credentials.
    var storageService = new StorageService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = "APP_NAME_HERE"
        });
    // Get the client request object for the bucket and desired object.
    var getRequest = storageService.Objects.Get("BUCKET_HERE", "OBJECT_HERE");
    using (var fileStream = new System.IO.FileStream(
        "FILE_PATH_HERE",
        System.IO.FileMode.Create,
        System.IO.FileAccess.Write))
    {
        // Add a handler which will be notified on progress changes.
        // It will notify on each chunk download and when the
        // download is completed or failed.
        getRequest.MediaDownloader.ProgressChanged += Download_ProgressChanged;
        getRequest.Download(fileStream);
    }
}

static void Download_ProgressChanged(IDownloadProgress progress)
{
    Console.WriteLine(progress.Status + " " + progress.BytesDownloaded);
}