ホームページ >ウェブフロントエンド >htmlチュートリアル >Webview がローカルの js と photos_html/css_WEB-ITnose をロードする方法

Webview がローカルの js と photos_html/css_WEB-ITnose をロードする方法

WBOY
WBOYオリジナル
2016-06-24 11:29:251329ブラウズ

プロジェクト開発では、比較的大きなJS、画像、CSSなどをアプリ内に配置することが多く、HTMLはサーバー上に配置されるため、使用時のトラフィックが少なく、読み込みが速くなります。実際、その方法もたくさんありますが、長い間オンラインで検索しましたが、結果がありませんでした。

1 つは、サーバーから返された HTML コンテンツを取得し、返された HTML を直接処理し、js と画像が参照されているリソースをローカルの "file:///android_asset/" リソースに置き換えることです。この方法は試していません。

もう 1 つは、WebViewClient を直接使用して実装する方法です

 1 webView.setWebViewClient(new WebViewClient(){ 2             @Override 3             public WebResourceResponse shouldInterceptRequest(WebView view, String url) { 4                 WebResourceResponse response = null; 5  6                     response = super.shouldInterceptRequest(view,url); 7                     if (url.contains("m.css")){ 8                         try { 9                             response = new WebResourceResponse("text/css","UTF-8",getAssets().open("css/m.css"));10                         } catch (IOException e) {11                             e.printStackTrace();12                         }13                     }14                 return  response;15             }16 });

次のバージョンで実行されるコードを区別するには、if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) を使用するのが最善であることに注意してください

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。