私はAmazon S3をアプリケーションのファイルストレージシステムとして使用しています。すべてのアイテムオブジェクトには複数のイメージが関連付けられており、それぞれにデータベースを軽量に保つためのイメージURLのみが格納されます。そのため、iOSから複数の画像を直接S3にアップロードする効率的な方法が必要です。また、正常終了すると、私はサーバーに送信するオブジェクトにURLを保存します。私は、Amazonが提供するSDKとサンプルアプリを閲覧しましたが、私が遭遇した唯一の例では、単一の画像のアップロードのためのものであり、次のように行く:複数の画像をiOSからS3に効率的にアップロードする
func uploadData(data: NSData) {
let expression = AWSS3TransferUtilityUploadExpression()
expression.progressBlock = progressBlock
let transferUtility = AWSS3TransferUtility.defaultS3TransferUtility()
transferUtility.uploadData(
data,
bucket: S3BucketName,
key: S3UploadKeyName,
contentType: "text/plain",
expression: expression,
completionHander: completionHandler).continueWithBlock { (task) -> AnyObject! in
if let error = task.error {
NSLog("Error: %@",error.localizedDescription);
self.statusLabel.text = "Failed"
}
if let exception = task.exception {
NSLog("Exception: %@",exception.description);
self.statusLabel.text = "Failed"
}
if let _ = task.result {
self.statusLabel.text = "Generating Upload File"
NSLog("Upload Starting!")
// Do something with uploadTask.
}
return nil;
}
}
5枚の画像の上向きの場合、これは、ネストされたになります私は各アップロードが正常に戻るのを待ってから次のページを開始してから、最後にそのオブジェクトを自分のDBに送信する必要があるからです。私の目標を達成するための効率的でコードクリーンな方法がありますか? Amazonのサンプルアプリのgithubのに
URL:https://github.com/awslabs/aws-sdk-ios-samples/tree/master/S3TransferUtility-Sample/Swift
あなたはそれを解決しましたか?私は同じことを探しています。 – user2722667