質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

1回答

2782閲覧

S3サーバーへのアップロードについて

hosso_popeppo

総合スコア12

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

2クリップ

投稿2015/08/04 08:57

Amzon Web ServicesのS3サーバーへの動画アップロードに失敗してしまいます。お分かりになる方おたすけください。
ちなみに、余分な箇所は削除されています。

AppDelegate.m

Objective

1#import <AWSCore/AWSCore.h> 2@interface AppDelegate() { 3 4 @end 5 6 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 7 { 8 AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionUSEast1 identityPoolId:"プールID"]; 9 10 AWSServiceConfiguration *configuration = [[AWSServiceConfiguration alloc] initWithRegion:AWSRegionUSEast1 credentialsProvider:credentialsProvider]; 11 12 [AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration; 13 14 [[credentialsProvider getIdentityId] continueWithSuccessBlock:^id(AWSTask *task){ 15 16 return nil; 17 }]; 18 19 return YES; 20 21 22 } 23 ``` 24 25 動画投稿用クラス 26 ```Objective-C 27#import <AWSCore/AWSCore.h> 28#import <AWSS3/AWSS3.h> 29#import <AWSDynamoDB/AWSDynamoDB.h> 30#import <AWSSQS/AWSSQS.h> 31#import <AWSSNS/AWSSNS.h> 32#import <AWSCognito/AWSCognito.h> 33 34@interface 35 36@end 37 38 -(void)execSubmit 39 { 40 { 41 NSLog(@"%s",__func__) ; 42 43 // 現在時間を取得する 44 NSDate *now = [NSDate date]; 45 NSLog(@"%@", now); 46 47 AWSS3TransferManagerUploadRequest *uploadRequest = [AWSS3TransferManagerUploadRequest new]; 48 uploadRequest.bucket = @"バケット名"; 49 uploadRequest.key = @"ファイル名"; 50 uploadRequest.body = staticRecordSession.outputUrl; 51 52 [[transferManager upload:uploadRequest] continueWithExecutor:[AWSExecutor mainThreadExecutor] 53 withBlock:^id(AWSTask *task) { 54 55 NSLog(@"task upload:%@",task); 56 if (task.error) { 57 if ([task.error.domain isEqualToString:AWSS3TransferManagerErrorDomain]) { 58 switch (task.error.code) { 59 case AWSS3TransferManagerErrorCancelled: 60 case AWSS3TransferManagerErrorPaused: 61 break; 62 63 default: 64 NSLog(@"Error: %@", task.error); 65 break; 66 } 67 } else { 68 // Unknown error. 69 NSLog(@"Error: %@", task.error); 70 } 71 } 72 73 if (task.result) { 74 AWSS3TransferManagerUploadOutput *uploadOutput = task.result; 75 // The file uploaded successfully. 76 } 77 return nil; 78 }]; 79 80 81 82 83 84 }; 85 } 86 ``` 87 88結果 89 902015-08-04 17:28:56.364 [235:13900] task upload:<AWSTask: 0x17627c100; completed = YES; cancelled = NO; faulted = YES; result:(null)> 912015-08-04 17:28:56.365 [235:13900] Error: Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo=0x1702e4e00 {NSUnderlyingError=0x170443900 "The operation couldn’t be completed. (kCFErrorDomainCFNetwork error -1001.)", NSErrorFailingURLStringKey=URL, NSErrorFailingURLKey=URL, NSLocalizedDescription=The request timed out.} 92 93となってしまいます。 94長時間はまっているのでどなたか助けていただけるとすごく助かります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

S3側のバケットのポリシーだったり、SDKが使ってるユーザーに権限(例えばputObject)が足りてないとかはありませんか?

投稿2015/08/06 03:13

jollyjoester

総合スコア1585

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hosso_popeppo

2015/08/06 08:08

回答いただきありがとうございます。putObjectというメソッド、AWS for mobileの公式ドキュメントにはないのですが、もし参考になるサイト等あればご教授いただけますか?
jollyjoester

2015/08/07 02:56

ShintaroIshidaさんありがとうございます! プログラムは正しく動いてそうなので接続先のAWSの設定(特に権限周り)をご確認ください:-)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問