メディアをダウンロード

再開可能なメディアのダウンロードは、1.4.0 ベータ版以降の Google API .NET クライアント ライブラリの機能となっています。 Google API 固有のライブラリには、API を操作するための便利なメソッドが用意されています。 おすすめします。

再開可能メディア ダウンロード プロトコルは、再開可能メディア アップロード プロトコルに類似しています。 たとえば、 Drive API のメディア アップロード ページ

関心の対象となっている主なクラスは MediaDownloader。 再開可能なメディア ダウンロードのこの実装では、メディア コンテンツがチャンク形式でダウンロードされます(チャンクサイズは構成可能です)。

サンプルコード

API 固有のライブラリのメソッドに 「supportsMediaDownload」パラメータの 2 番目のパラメータと、 次に DownloadDownloadAsync を コンビニエンス メソッドがリクエスト クラスで利用できます。 これらのメソッドは、メディアデータを Stream にダウンロードします。 オブジェクトを宣言します。次に例を示します。
{
    // 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);
}