答えて

0

のAndroid用AWS SDKを使用し、同じのためにAWSのドキュメントを確認してください:転送ユーティリティでhttps://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/s3transferutility.html

を、ダウンロード()と(アップロード)の方法はTransferObserverオブジェクトを返します。状態(今列挙型として指定)これまでに(簡単にプログレスバーを算出するために)転送する 総バイト数を転送 総バイト数 あなたが追跡するために使用することができますユニークなID

:このオブジェクトは、へのアクセスを提供します異なる転送の 転送IDが与えられると、このTransferObserverオブジェクトは、アプリが殺された場合を含め、アプリ内のどこからでも取得できます。また、エラーが発生したときだけでなく、状態や進行状況の変更時に更新されるTransferListenerを作成することもできます。

ダウンロードまたはアップロードの進行状況を取得するには、TransferObserverでsetTransferListener()を呼び出します。これには、onStateChanged、onProgressChanged、onErrorの実装が必要です。たとえば、

TransferObserver transferObserver = download(MY_BUCKET, OBJECT_KEY, MY_FILE); 
transferObserver.setTransferListener(new TransferListener(){ 

    @Override 
    public void onStateChanged(int id, TransferState state) { 
     // do something 
    } 

    @Override 
    public void onProgressChanged(int id, long bytesCurrent, long bytesTotal) { 
     int percentage = (int) (bytesCurrent/bytesTotal * 100); 
     //Display percentage transfered to user 
    } 

    @Override 
    public void onError(int id, Exception ex) { 
     // do something 
    } 

}); 
+0

これは1つのファイルupload.amに対して正しいものですか? .i複数のファイルをアップロードするためのプログレスバーが必要です。私は問題のアップロード方法について言及します。 –

+0

AWSの文書に従えば、リスナーに電話をしなければならないことがわかります。 –

+1

私は疲れたリスナー機能も持っています。 –

関連する問題