WKWebView пытается работать в фоновом режиме, хотя он закрыт и его следует удалить. ⇐ IOS
-
Anonymous
WKWebView пытается работать в фоновом режиме, хотя он закрыт и его следует удалить.
У меня есть простой WKWebView в контейнере UIViewController приложения. Пользователь откроет этот контейнер UIViewController с помощью WKWebView, а затем закроет его с помощью элемента навигации «Назад». Элемент навигации располагает контейнером и WKWebView. Это работает, но при каждом закрытии я вижу в журнале следующие ошибки:
Первая пара ошибок:
[assertion] Ошибка получения утверждения:
[ProcessSuspension] 0x7f8f9d404210 — ProcessAssertion: не удалось получить фоновое утверждение RBS «Фоновое утверждение WebProcess» для процесса с PID 27176, ошибка: Error Domain=RBSAssertionErrorDomain Code=3 «Цель не запущена или отсутствуют необходимые целевые права» UserInfo= {RBSAssertionAttribute=, NSLocalizedFailureReason=Цель не запущена или необходимые права на цель отсутствуют
Вторая пара ошибок:
[assertion] Ошибка получения утверждения:
[ProcessSuspension] 0x7f8f9d005c30 — ProcessAssertion: не удалось получить фоновое утверждение RBS «Фоновое утверждение веб-процесса» для процесса с PID 27176, ошибка: Error Domain=RBSAssertionErrorDomain Code=2 «Указанный целевой процесс не существует» UserInfo={NSLocalizedFailureReason=Specified целевой процесс не существует
Третья пара ошибок:
Не удалось сигнализировать службе com.apple.WebKit.WebContent: 113: не удалось найти указанную службу
Не удалось сигнализировать службе com.apple.WebKit.Networking: 113: не удалось найти указанную службу
WKWebView удаляется из viewDidDisappear контейнера UIViewController (также пытались переместить его в viewWillDisappear, но это не имело никакого значения) следующим образом:
webView.stopLoading() webView.configuration.userContentController.removeScriptMessageHandler(forName: "...") webView.navigationDelegate = ноль webView.scrollView.delegate = ноль веб-просмотр = ноль Похоже, что эти ошибки не имеют никаких негативных побочных эффектов. Но я хочу понять: мне не хватает какой-то очистки при удалении WKWebView? Почему он пытается «войти в фоновый режим»?
У меня есть простой WKWebView в контейнере UIViewController приложения. Пользователь откроет этот контейнер UIViewController с помощью WKWebView, а затем закроет его с помощью элемента навигации «Назад». Элемент навигации располагает контейнером и WKWebView. Это работает, но при каждом закрытии я вижу в журнале следующие ошибки:
Первая пара ошибок:
[assertion] Ошибка получения утверждения:
[ProcessSuspension] 0x7f8f9d404210 — ProcessAssertion: не удалось получить фоновое утверждение RBS «Фоновое утверждение WebProcess» для процесса с PID 27176, ошибка: Error Domain=RBSAssertionErrorDomain Code=3 «Цель не запущена или отсутствуют необходимые целевые права» UserInfo= {RBSAssertionAttribute=, NSLocalizedFailureReason=Цель не запущена или необходимые права на цель отсутствуют
Вторая пара ошибок:
[assertion] Ошибка получения утверждения:
[ProcessSuspension] 0x7f8f9d005c30 — ProcessAssertion: не удалось получить фоновое утверждение RBS «Фоновое утверждение веб-процесса» для процесса с PID 27176, ошибка: Error Domain=RBSAssertionErrorDomain Code=2 «Указанный целевой процесс не существует» UserInfo={NSLocalizedFailureReason=Specified целевой процесс не существует
Третья пара ошибок:
Не удалось сигнализировать службе com.apple.WebKit.WebContent: 113: не удалось найти указанную службу
Не удалось сигнализировать службе com.apple.WebKit.Networking: 113: не удалось найти указанную службу
WKWebView удаляется из viewDidDisappear контейнера UIViewController (также пытались переместить его в viewWillDisappear, но это не имело никакого значения) следующим образом:
webView.stopLoading() webView.configuration.userContentController.removeScriptMessageHandler(forName: "...") webView.navigationDelegate = ноль webView.scrollView.delegate = ноль веб-просмотр = ноль Похоже, что эти ошибки не имеют никаких негативных побочных эффектов. Но я хочу понять: мне не хватает какой-то очистки при удалении WKWebView? Почему он пытается «войти в фоновый режим»?
Мобильная версия