2

同時に表示される多くの (5-10) WebView があります (たとえば、ストック ギャラリーに似た「カルーセル」として)。リモート Web サイトは、これらの WebView に読み込まれます (ローカルの html ファイルではありません)。Web サイトは非常に複雑です。多くの JavaScript や画像が含まれており、Flash が含まれている場合もあります。

アプリが起動すると、すべての WebView がコンテンツの読み込み/レイアウトを開始し、javascript を実行します。これにはかなりの時間がかかります。一方、WebView が読み込まれているときのアプリの応答性は非常に高く、スクロールやその他の UI は非常にスムーズで、CPU に負荷がかかることはありません。

  1. これらのビューを並行してロードすることは可能ですか? 私のアプリは、WebView を並行して読み込むことで大きなメリットを得られると思います。
  2. また、WebView のソース コードを再利用して、javascript、ロード、およびレイアウトを手動で行う方法はありますか?
4

1 に答える 1

0

私自身の質問に答える:

  1. 不可能です-すべてのWebビュー(およびその結果としてレイアウト)のJavaScriptは、同じ共有スレッドで実行されます。
  2. どちらも機能しません-多くの非公開APIを使用します。

代わりに、WebChromeClient#shouldInterceptRequestを使用して、可能な限り多くのリソースをキャッシュしました。これにより、読み込み時間が大幅に改善されました。

于 2012-05-16T08:00:06.883 に答える