AFNetworking 2.0を使ってPOSTする時に進捗状況を確認したい場合はどうすればいいのだろうか?
同じ悩みを抱えている人がstackoverflowのAFNetworking 2.0 HTTP POST Progressにあって、下のように実装したら確かに取得できた。
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{};
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
AFHTTPRequestOperation *requestOperation = [manager POST:@"http://localhost"
parameters:parameters
constructingBodyWithBlock:(id formData ){
} success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"operation success: %@\n %@", operation, responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
[requestOperation setUploadProgressBlock:^(NSUInteger bytesWritten, NSInteger totalBytesWritten, NSInteger totalBytesExpectedToWrite) {
double percentDone = (double)totalBytesWritten / (double)totalBytesExpectedToWrite;
NSLog(@"progress updated(percentDone) : %f", percentDone);
}];
[requestOperation start]; これとSVProgressHUDを絡めれば相当いけている幹事になるかも。
0 コメント:
コメントを投稿