Я использую WebView для отображения интернет-контента в одном из действий нашего приложения.
Проблема в том, что когда пользователь отключается от этого действия, потоки WebView продолжают работать!
Проблемные потоки:
Thread [<17> WebViewCoreThread] (Running)
Thread [<25> CookieSyncManager] (Running)
Thread [<19> http0] (Running)
Thread [<29> http1] (Running)
Thread [<31> http2] (Running)
Thread [<33> http3] (Running)
Приостановка каждого из этих потоков и проверка того, чем он занят:
Thread [<17> WebViewCoreThread] (Suspended)
Object.wait(long, int) line: not available [native method]
MessageQueue(Object).wait() line: 288
MessageQueue.next() line: 148
Looper.loop() line: 110
WebViewCore$WebCoreThread.run() line: 471
Thread.run() line: 1060
Thread [<25> CookieSyncManager] (Suspended)
Object.wait(long, int) line: not available [native method]
MessageQueue(Object).wait(long) line: 326
MessageQueue.next() line: 144
Looper.loop() line: 110
CookieSyncManager(WebSyncManager).run() line: 90
Thread.run() line: 1060
Thread [<19> http0] (Suspended)
Object.wait(long, int) line: not available [native method]
RequestQueue(Object).wait() line: 288
ConnectionThread.run() line: 93
Интересно, как я могу сказать Looper
в каждом из этих потоков, чтобы они прекратили работу.
Я пытался вызвать webView.destroy()
в методе onPause()
активности, но это не повлияло.
Когда я отключаю вызов для открытия веб-страницы в webView ( webView.loadUrl(...)
), эти потоки, естественно, не запускаются и, следовательно, не остаются активными. после выхода из активности.
Любые идеи относительно того, как я могу остановить потоки WebView
после выхода из их активности?