すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:進捗横棒グラフ (iOS SDK)

最終更新日:Nov 30, 2025

進捗バーを使用すると、アップロードまたはダウンロード中のオブジェクトの進捗状況を表示できます。 このトピックでは GetObject 操作を例に、ダウンロード中のオブジェクトの進捗バーを表示する方法を説明します。

注意事項

  • このトピックのサンプルコードを実行する前に、カスタムドメイン名や Security Token Service (STS) などを使用して OSSClient インスタンスを作成する必要があります。 詳細については、「初期化」をご参照ください。

    説明

    バケットのリージョンは、初期化時に指定されたエンドポイントのリージョンによって決まります。

  • ファイルをダウンロードするには、ossGetObject 権限が必要です。 詳細については、「RAM ユーザーへのカスタムアクセスポリシーの付与」をご参照ください。

次のサンプルコードは、`examplebucket` という名前のバケットから `exampleobject.txt` という名前のオブジェクトをダウンロードする際の進捗状況を表示する方法の例です。

OSSGetObjectRequest * request = [OSSGetObjectRequest new];
// バケット名を指定します。 例:examplebucket
request.bucketName = @"examplebucket";
// オブジェクトの完全なパスを指定します。 完全なパスにバケット名を含めないでください。 例:exampledir/exampleobject.txt
request.objectKey = @"exampledir/exampleobject.txt";
// 進捗コールバック関数を設定して、進捗バーを表示します。
request.downloadProgress = ^(int64_t bytesWritten, int64_t totalBytesWritten, int64_t totalBytesExpectedToWrite) {
    // ダウンロード中のバイト数、ダウンロード済みのバイト数、ダウンロードしたい合計バイト数を指定します。
    NSLog(@"%lld, %lld, %lld", bytesWritten, totalBytesWritten, totalBytesExpectedToWrite);
};

OSSTask * getTask = [client getObject:request];
[getTask continueWithBlock:^id(OSSTask *task) {
    if (!task.error) {
        NSLog(@"download object success!");
    } else {
        NSLog(@"download object failed, error: %@" ,task.error);
    }
    return nil;
}];
// 同期ブロッキングを実装して、タスクが完了するのを待ちます。
// [putTask waitUntilFinished]; 

関連ドキュメント

OSSClient インスタンスを初期化する方法の詳細については、「初期化」をご参照ください。