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

Object Storage Service:プログレスバー (Android SDK)

最終更新日:Nov 30, 2025

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

注意事項

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

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

// ダウンロードリクエストを構築します。
// バケット名 (例: examplebucket) とオブジェクトの完全なパス (例: exampledir/exampleobject.txt) を指定します。 オブジェクトの完全なパスにバケット名を含めることはできません。
GetObjectRequest get = new GetObjectRequest("examplebucket", "exampledir/exampleobject.txt");
// 進捗コールバック関数を設定して、プログレスバーを表示します。
get.setProgressListener(new OSSProgressCallback<GetObjectRequest>() {
    @Override
    public void onProgress(GetObjectRequest request, long currentSize, long totalSize) {
        Log.d("GetObject", "currentSize: " + currentSize + " totalSize: " + totalSize);
    }
});
// オブジェクトを非同期でダウンロードします。
OSSAsyncTask task = oss.asyncGetObject(get, new OSSCompletedCallback<GetObjectRequest, GetObjectResult>() {
    @Override
    public void onSuccess(GetObjectRequest request, GetObjectResult result) {
        Log.d("GetObject", "downLoadSuccess");
    }

    @Override
    public void onFailure(GetObjectRequest request, ClientException clientException, ServiceException serviceException) {
        // リクエストは失敗しました。
        if (clientException != null) {
            // ネットワーク例外などのクライアント例外が発生しました。
            clientException.printStackTrace();
        }
        if (serviceException != null) {
            // サーバー側例外が発生しました。
            Log.e("ErrorCode", serviceException.getErrorCode());
            Log.e("RequestId", serviceException.getRequestId());
            Log.e("HostId", serviceException.getHostId());
            Log.e("RawMessage", serviceException.getRawMessage());
        }
    }
});

関連ドキュメント

  • オブジェクトのダウンロード中にプログレスバーを使用する方法の完全なサンプルコードについては、GitHub をご参照ください。

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