Проблемы WKWebView в iOS 9

У меня проблемы с WKWebView в XCode 7 с использованием iOS 9 sdk. По какой-то причине половина веб-сайтов, которые я пытаюсь загрузить, остаются пустыми (например, мобильный Facebook).

WKWebView отлично работал, когда я создавал свое приложение для iOS 8. Я не изменил код для загрузки веб-страниц (я использовал loadrequest с nsurl), и я знаю, что веб-просмотры активны, потому что некоторые ссылки действительно загружаются.

Это возможная ошибка?


person user3796209    schedule 19.09.2015    source источник


Ответы (1)


Это может быть связано с новой функцией ATS (App Transport Security), которая появилась в iOS 9.

См.: https://developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/

Все подключения с использованием API-интерфейсов NSURLConnection, CFURL или NSURLSession используют поведение по умолчанию App Transport Security в приложениях, созданных для iOS 9.0 или более поздней версии и OS X 10.11 или более поздней версии. Соединения, которые не соответствуют требованиям, не будут работать.

Можно добавить исключения или разрешить любые незащищенные соединения. Например, вы можете добавить это в свой Info.plist:

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitraryLoads</key>
  <true/>
</dict>
person samsonthehero    schedule 19.09.2015
comment
ЭТО РАБОТАЛО! Благодарю вас! - person user3796209; 19.09.2015
comment
После этого изменения мой работал примерно один раз, а затем более поздние сборки снова перестали работать ... - person Pei Xiang; 22.09.2015