Oczekiwanie na zakończenie wysyłania obrazu wieloczęściowego

Udostępniam aplikację w iOS7, to rodzaj aplikacji sieci społecznościowej z postami z obrazami i zapleczem, które zapisuje wszystkie dane wysłane z klienta. Klient iOS wysyła informacje o poście za pośrednictwem json i po wysłaniu informacji rozpoczyna wysyłanie obrazu za pomocą formularza wieloczęściowego przy użyciuAFNetworking.

Muszę zostać powiadomiony, gdy obraz zostanie wysłany, dzięki czemu mogę odświeżyć główny widok aplikacji za pomocą nowych postów, w tym ostatnio opublikowanych przez klienta. W praktyce, jeśli zażądam backendu dla ostatnich postów, a multipart nie został zakończony, wysyłanie obrazu zostaje przerwane i nie można wysłać obrazu.

Backend jest rozwijanyWCF i jest usługą WWW RESTful JSON.

Oto metoda, która wysyła post do zaplecza:

+(void)addPostToServerAddtext:(NSString *)text addimage:(UIImage *)image addbeach:(NSString *)beach location:(NSString*)location;
{
    NSLog(@"entro a addPost");
    NSString *urlBackend = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"URLBackend"];

    NSData* dataImage = UIImageJPEGRepresentation(image, 1.0);
    NSString* ImageName = [NSString stringWithFormat:@"%@_%@.jpg",idUser ,dateToServer];
    NSString *jsonRequest = [NSString stringWithFormat:@"{\"Date\":\"%@\"...."];

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@newPost",urlBackend]];

    NSMutableURLRequest *request = [ [NSMutableURLRequest alloc] initWithURL:url];
    NSData *requestData = [NSData dataWithBytes:[jsonRequest UTF8String] length:[jsonRequest length]];

    [request setHTTPMethod:@"POST"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"];
    [request setHTTPBody:requestData];

    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
    [connection start];

    if (image != nil) {

        AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
        [manager POST:[NSString stringWithFormat:@"%@FileUpload",urlBackend]
           parameters:nil
constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
            [formData appendPartWithFileData:dataImage name:@"image" fileName:ImageName mimeType:@"image/jpg" ];
        }
              success:^(AFHTTPRequestOperation *operation, id responseObject) {
            NSLog(@"Success: %@", responseObject);
        }
              failure:^(AFHTTPRequestOperation *operation, NSError *error) {
            NSLog(@"Error: %@", error);
        }];
    }
}

questionAnswers(1)

yourAnswerToTheQuestion