Несколько отсоединенных экземпляров webview, которые можно увидеть на устройствах chrome во время навигации в гибридном приложении android
У нас есть гибридное приложение для android. Я пытаюсь перейти от контекста WebView
к контексту Native
назад и вперед. Используя chrome://inspect/#devices
, я замечаю, что несколько экземпляров устройства проверяются detached
, в то время как один из всех будет attached
, как показано в chrome.
Ссылаясь на SO-28254614 , Теперь я не разработал WebView, хотя, насколько я знаю о нашем приложении, WebView не разработаны с использованием Cordova и находятся в JS.
И вопрос, который у меня есть:
- Почему это это так, что мы видим эти отсоединенные устройства на chrome?
- может ли это быть утечкой в Android WebView?
[5]}правка 1: с нетерпением жду помощи. Подняли за это несколько раз, но безрезультатно. Жду какого-то решения этой проблемы.Правка 2: все еще ищу возможный ответ. Электрический ток ответы не содержат достаточно подробностей.
1 ответ:
Таким образом, способ работы этих веб-инспекторов заключается в том, что они используют протокол RemoteDebug.
Этот протокол определяет различные сообщения и команды, которыми вы обмениваетесь, чтобы "проверить" свои страницы.
Один экземпляр инспектора может одновременно подключаться только к одному клиенту. Поэтому, предполагая, что вы переключаетесь между веб-представлениями и собственным контекстом, вы в основном создаете новые веб-представления для каждого нового переключения контекста.
Это будет означать, что ранее открытые веб-просмотры теперь "осиротели" и для всех практических целей
detached
.Можно попытаться сообщить виртуальной машине, что webview больше не используется, вызвав
Надеюсь, это даст более глубокое понимание того, что происходит за кулисами.destroy()
в webview, чтобы сборщик мусора знал, что он больше не требуется.