0

iPhone アプリから Web サーバーにオーディオ ファイルをアップロードしたいのですが、それを NSData に変換すると、変換に最大 30 ~ 40 分かかります。

4

1 に答える 1

2

1). オーディオ ファイルを NSData に変換するには:

NSString *audioFilePath = @""; // local path where audio stored
NSData *audioData = [[NSData alloc] initWithContentsOfFile:audioFilePath];

2).オーディオファイルをアップロードするには:

NSString *audioName = @"myAudio.caf";
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://someurl.aspx"]];    
[request addData:audioData withFileName:audioName andContentType:@"audio/caf" forKey:@"audioFile"];
[request setDelegate:self];
[request setTimeOutSeconds:500];
[request setDidFinishSelector:@selector(uploadRequestFinished:)];
[request setDidFailSelector:@selector(uploadRequestFailed:)];
[request startAsynchronous];

- (void)uploadRequestFinished:(ASIHTTPRequest *)request
{
    UIApplication* app = [UIApplication sharedApplication];
    app.networkActivityIndicatorVisible = NO;   
    NSData *webData = [[NSData alloc] initWithData:[request responseData]];
    NSString *strEr =  [[NSString alloc] initWithData:webData encoding:NSUTF8StringEncoding];
}

- (void) uploadRequestFailed:(ASIHTTPRequest *)request
{
    NSLog(@"responseStatusCode %i",[request responseStatusCode]);
    NSLog(@"responseString %@",[request responseString]);
    NSError *error = [request error];
    UIApplication* app = [UIApplication sharedApplication];
    app.networkActivityIndicatorVisible = NO;   
}
于 2012-08-08T10:36:20.300 に答える