NSURLConnection публикует большие видеоданные с ошибками в iphone 3gs

Я пытаюсь загрузить большой видеофайл с помощью nsurconnection в iphone 3gs. Но он не работает. Приложение вылетает без каких-либо журналов. Тот же код работает нормально в iphone4. Я хотел бы знать, если это какая-то проблема с ограничением памяти. 3gs загружает небольшие видео с одинаковым кодом. Это терпит неудачу только для видео большого размера

вот код, который я использовал:

NSMutableURLRequest *request=[[NSMutableURLRequest alloc]
                                              initWithURL:[NSURL URLWithString: urlString]
                                              cachePolicy:NSURLRequestUseProtocolCachePolicy
                                              timeoutInterval:6000.0];


            [request setHTTPMethod:@"POST"];
            [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
            [request setValue:@"application/x-www-form-urlencoded; boundary=AaB03x" forHTTPHeaderField:@"Content-Type"];

            NSLog(@"VideoPathD:%@",videoPathUrl);
            NSError *error;
            [request setHTTPBody: [NSData dataWithContentsOfURL:videoPathUrl options:0 error:&error]];


            [NSURLConnection connectionWithRequest:request delegate:self];

1 ответ

Решение

Вы пытались транслировать тело HTTP вместо того, чтобы использовать NSData?

замещать

[request setHTTPBody: [NSData dataWithContentsOfURL:videoPathUrl options:0 error:&error]];

с

NSInputStream *videoStream = [[[NSInputStream alloc] initWithURL:videoPathUrl] autorelease];
[request setHTTPBodyStream:videoStream];
Другие вопросы по тегам