是否有可能分开的WebView UI和HTTP线程?(Is it possible to separ

2019-06-25 20:27发布

由于种种原因,我需要runOnUiThread()实际实例化和初始化的WebView 。

这意味着其潜在的HTTP连接也UI线程上进行?

如果这是真的,是有可能的的WebView UI THEAD从HTTP连接线分开?

如果它是可能的,什么是解决这个问题的正确方法?

Answer 1:

觉得很难相信,安卓将在UI线程上运行远程HTTP请求,假设你通过发起请求WebView.loadUrl() 这将使一个可怕的用户体验。

只是很快,我跑在调试一个Android应用程序,一个基本WebView ,并在调试停止。 这是我看到:

如果WebViewCoreThreadWebViewWorkerThread ,或http0 - http3不处理对网络连接WebView对象,那么

  1. 他们有非常坏的名字
  2. Android是建立实在太差了

另外,如果你看看这个答案由堆栈溢出的声誉最高的用户之一, 使用loadURL()是异步的 。 在调试器中快人一步,通过告诉我, loadUrl()这就是所谓的UI线程(又名上main ),完成得太快用于连接到在UI线程同步处理。 (我把一个断点之前和调用之后loadUrl()与我知道是不是提供非常快的URL)。

所以,我的回答是,你就大功告成了......他们已经分开! (是的!)



文章来源: Is it possible to separate WebView's UI and HTTP threads?