2015-09-02 5 views
7

я получил следующие ошибки,IOS UIWebView падает при попытке запросить URL

Assertion failed: (stream != NULL), function cb_spdylay_on_stream_close, file /SourceCache/CFNetwork_Sim/CFNetwork-711.1.12/SPDY/SPDYConnection.cpp, line 1775. 

при попытке открыть ссылку, используя код,

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self.webV loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"https://drive.google.com/file/d/0B_FNaB0Xf3wVRVg3UVhaLWpPclU/view"]]]; 
} 

эта ошибка не произошло до 3-х дней

+1

любое решение для этого? даже при сбое приложения при попытке войти в учетную запись google. с этой ошибкой Утверждение не выполнено: (поток! = NULL), Функция cb_spdylay_on_stream_close, файл /SourceCache/CFNetwork_Sim/CFNetwork-711.4.6/SPDY/SPDYConnection.cpp, строка 1778. – iDev

+0

нет решения до сих пор – Ali

+0

Я провел еще несколько исследований и думаю, что, возможно, обновление для WKWebView (а не UIWebView) для iOS 8.x + может исправить его. См. Мою ** Правку ** ниже для ссылки на документацию. Если вы уже пробовали это, или если вы попробуете его, и он работает/не работает, мне было бы очень интересно. Благодаря! – Stoph

ответ

2

Я просто столкнулся с этой проблемой. Я знаю, что это мало помогает, но похоже, что это ошибка iOS 8+ при доступе к определенным серверам.

Я также вижу это при доступе к ресурсам с Диска, так что, может быть, они что-то изменили недавно?

информация пятнистая, но this is what I'm basing my conclusion on.

EDIT:

У меня не было возможности проверить это еще, но моя текущая теория в том, что эта проблема может быть решена с помощью перехода на более WebKit-based view для IOS 8.x + просмотров. Я надеюсь получить некоторое время, чтобы проверить эту теорию на следующий день или два. После этого я опубликую свои результаты.

NEW EDIT:

Я просто проверял открытие тот же URL с WKWebView. Хорошей новостью является то, что она не потерпела крах. Плохая новость заключается в том, что я получаю сообщение об ошибке:

Error Domain=WebKitErrorDomain Code=300 "WebKit encountered an internal error" 

Не очень полезно, Apple. Я все еще исследую, но больше не везет.

+1

Спасибо за помощь, я думаю, что проблема с приводом Google изменила что-то. – Ali

+0

Часть меня тоже думает. Единственное странное, что я все еще могу получить доступ к файлам с одним и тем же URL, используя UIWebView в iOS 7 или через обычное Safari в iOS 8. С полным отсутствием информации о том, что может быть причиной этого, я не уверен, что отсюда. – Stoph

0

Мы получаем аварии на IOS 8.x на:

CFNetwork 0x0000000184574058 cb_spdylay_on_stream_close + 192 

Похоже, что в IOS 9 Beta 5 и прошивкой 7.1 он работает прекрасно.

+0

Да только на iOS 8.x, любое решение, пожалуйста? – Ali

1

Для этого есть 2 решения.

  1. Перейти к WKWebView: для прошивки 8+
  2. Добавить настраиваемое UserAgent

Используйте этот образец UserAgent:

Mozilla/5.0 AppleWebKit/600.5.17 Version/8.0.5 Safari/600.5.17

NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"Mozilla/5.0 AppleWebKit/600.5.17 Version/8.0.5 Safari/600.5.17", @"UserAgent", nil]; 
[[NSUserDefaults standardUserDefaults] registerDefaults:dictionary]; 

Это о Spoofing

Some websites will deliver different content to different programs that ask for the same page. In extreme cases, a website may deny access completely to some programs. When this happens, you can try to gain access to the site by “spoofing” as another browser.

Проверить в своем блоге: http://trinnguyen.com/cocoa-spdy-issue-fixed-for-webview/

Смежные вопросы