Почему WKWebView не может загружать URL-адрес каждый раз?

#ios #wkwebview #wkwebviewconfiguration

#iOS #wkwebview #конфигурация wkwebviewconfiguration

Вопрос:

Я пытаюсь загрузить URL-адрес с помощью WKWebView устройства iPad. Он загружается по Wi-Fi, а также по мобильным данным, но в 50% случаев при загрузке мобильных данных возникают некоторые проблемы.

  • Скорость сети в iPad, который я тестирую, составляет более 30 Мбит / с (проверено на Speedtest)
  • Allow Arbitrary Loads устанавливается в YES

Однако он вызывает метод делегата сбоя WKWebView и выдает ошибку, которая Internet connection appears to be offline.

Ниже приводится моя реализация

 func loadURL() {  if let url = URL(string: "http://abc.xyz.co.in")  {  let webView = WKWebView(frame: self.view.frame)  webView.frame = CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height)  webView.navigationDelegate = self  webView.load(URLRequest(url: url))  webView.allowsBackForwardNavigationGestures = true  self.view.addSubview(webView)  } }  

Я также реализовал необходимые методы делегирования:

 extension MyViewController: WKNavigationDelegate {  func webView(_: WKWebView, didStartProvisionalNavigation _: WKNavigation!)  {  print("----- didStartProvisionalNavigation -----")  }    func webView(_: WKWebView, didFinish _: WKNavigation!)  {  print("----- didFinishNavigation -----");  }    func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error)  {  print("----- didFail -----");  print("Fail Error: (error.localizedDescription)");  }    func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error)  {  print("----- didFailProvisionalNavigation -----");  print("Provisional Navigation Fail Error: (error.localizedDescription)");  }   func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -gt; Void)  {  decisionHandler(.allow)  }   func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -gt; Void)  {  decisionHandler(.allow)  } }  

Ошибка

Ошибка сбоя предварительной навигации: Подключение к Интернету, похоже, отключено.

Комментарии:

1. Не отключено ли подключение к Интернету в этой сети? Можете ли вы просматривать другие интернет-сайты в этой сети?

2. Да, открываются другие ссылки. На самом деле многие пользователи сталкиваются с той же проблемой, несмотря на то, что их мобильные данные загружены.

3. Подключение к сайту кажется довольно длительным, это может объяснить, почему он может быть обнаружен как автономный.

4. Я проверяю, и пинг почему-то не всегда работает (160 мс при работе).

5. Но это не вопрос программирования. Дело в том, что сайт иногда кажется автономным. Сообщение об ошибке правильное. Так что на этот вопрос нет ответа.