Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
androidwebview:并行加载、布局和Javascript_Javascript_Android_Webview_Load_Parallel Processing - Fatal编程技术网

androidwebview:并行加载、布局和Javascript

androidwebview:并行加载、布局和Javascript,javascript,android,webview,load,parallel-processing,Javascript,Android,Webview,Load,Parallel Processing,我有许多(5-10)同时显示的网络视图(例如,类似于股票画廊的“旋转木马”)。远程网站加载到这些web视图中(而不是本地html文件)。网站非常复杂-他们有很多javascript、图像,可能有一些flash 当应用程序启动时,所有网络视图开始加载/布局其内容并运行javascript——所有这些都需要相当长的时间。另一方面,当网络视图加载时,应用程序的响应速度非常快——滚动,其他UI内容非常流畅——CPU绝对不会承受压力 那么,有可能并行加载这些视图吗?我认为我的应用程序将从并行加载WebVi

我有许多(5-10)同时显示的网络视图(例如,类似于股票画廊的“旋转木马”)。远程网站加载到这些web视图中(而不是本地html文件)。网站非常复杂-他们有很多javascript、图像,可能有一些flash

当应用程序启动时,所有网络视图开始加载/布局其内容并运行javascript——所有这些都需要相当长的时间。另一方面,当网络视图加载时,应用程序的响应速度非常快——滚动,其他UI内容非常流畅——CPU绝对不会承受压力

  • 那么,有可能并行加载这些视图吗?我认为我的应用程序将从并行加载WebView中受益匪浅
  • 另外,也许有一种方法可以通过重用WebView源代码来手动执行javascript、加载和布局

  • 回答我自己的问题:

  • 这是不可能的-所有Web视图上的javascript(因此布局)都是在同一个共享线程上完成的
  • 也不会工作-它使用大量非公共API

  • 相反,我使用WebChromeClient#shouldInterceptRequest来缓存尽可能多的资源,这大大缩短了加载时间。

    回答了我自己的问题:

  • 这是不可能的-所有Web视图上的javascript(因此布局)都是在同一个共享线程上完成的
  • 也不会工作-它使用大量非公共API
  • 相反,我使用WebChromeClient#shouldInterceptRequest来缓存尽可能多的资源,这大大缩短了加载时间