Экран в моем приложении должен загружать встроенные видеоролики YouTube. У меня это так:UIWebView loadHTMLString сбой приложения witn EXC_BAD_ACCESS
NSString *html = @"<iframe id='ytplayer' type='text/html' width='300' height='390' src='http://www.youtube.com/embed/nK8bGHU3d0U?autoplay=1&origin=http://example.com' style=\"background-color: #000000;\" frameborder='0'/>"
[self embedYouTube:html frame:CGRectMake(left, 780, 640, 500)];
- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame {
NSString *html = [NSString stringWithFormat:urlString, urlString, frame.size.width, frame.size.height];
UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame];
videoView.backgroundColor = [UIColor blackColor];
videoView.opaque = NO;
[videoView loadHTMLString:html baseURL:nil];
[self.scrollView addSubview:videoView];
}
Это работало на некоторое время, но вдруг это вызывает мое приложение к сбою с EXC_BAD_ACCESS. Я сузил его до этой строки:
[videoView loadHTMLString:html baseURL:nil];
Я не уверен, как это исходит. Кроме того, я знаю, что этот EXC_BAD_ACCESS обычно является признаком ошибки памяти, но, похоже, это не так. Я не собираюсь возвращаться на этот экран, просто нажимая его, как только приложение запустится. И он падает.
Когда я переношу приложение в другое место на моем жестком диске, он отлично работает. Понятия не имею почему.
Спасибо, @Leijonien. Как вы относитесь к «поврежденному кешу»? Что вы сделали, чтобы исправить это, когда у вас были проблемы с кешем? – Eddy
Просто удалив приложение с устройства/симулятора, он должен выполнить чистую установку при следующем запуске приложения. (извините ничего волшебного ;-) – Leijonien
Я попробовал, но ошибка все еще там. Благодарю. – Eddy