我正在使用分段上传文件上传它的工作。但是,不调用代表如何调用代表。
这是我的代码:
AmazonS3Client *s31 = [[AmazonS3Client alloc] initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY];
s31.endpoint = [AmazonEndpoints s3Endpoint:US_WEST_2];
s31.timeout = 240;
@try
{
[s31 createBucketWithName:bucket];
S3InitiateMultipartUploadRequest *initReq = [[S3InitiateMultipartUploadRequest alloc] initWithKey:key inBucket:bucket];
S3MultipartUpload *upload = [s31 initiateMultipartUpload:initReq].multipartUpload;
S3CompleteMultipartUploadRequest *compReq = [[S3CompleteMultipartUploadRequest alloc] initWithMultipartUpload:upload];
int numberOfParts = [self countParts:imageData];
for ( int part = 0; part < numberOfParts; part++ ) {
NSData *dataForPart = [self getPart:part fromData:imageData];
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
[appDelegate.dataArray addObject:dataForPart];
// The S3UploadInputStream was deprecated after the release of iOS6.
NSInputStream *stream = [NSInputStream inputStreamWithData:dataForPart];
//if ( using3G ) {
// If connected via 3G "throttle" the stream.
//stream.delay = 0.2; // In seconds
//stream.packetSize = 16; // Number of 1K blocks
// }
S3UploadPartRequest *upReq = [[S3UploadPartRequest alloc] initWithMultipartUpload:upload];
upReq.partNumber = ( part + 1 );
upReq.contentLength = [dataForPart length];
upReq.stream = stream;
S3UploadPartResponse *response = [s31 uploadPart:upReq];
[compReq addPartWithPartNumber:( part + 1 ) withETag:response.etag];
NSLog(@"Coming222");
}
[s31 completeMultipartUpload:compReq];
[self textfileupload];
}
@catch ( AmazonServiceException *exception )
{
isUpload=NO;
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
NSLog( @"Multipart Upload Failed, Reason: %@", exception );
}
请帮我。