如何使用Android WebView loadData触发css和js加载

时间:2016-08-17 18:18:53

标签: android webview httpclient

当我从外部将HTML加载到WebView中时,如何使WebView请求CSS和javascript链接? 这个问题类似于: https://stackoverflow.com/questions/34608714/css-and-js-files-not-loading-in-android-webview 但我们正在从服务器加载所有内容。为了支持SSL Pinning,我们覆盖了

loadUrl(String url) 

方法(并将覆盖其他方法)并使用HttpClient.execute调用处理请求。当我们从网络收到数据时,我们会将其推送到webview中

WebView.loadData(event.getContent(), event.getMimeType(), event.getEncoding());

我们应该如何实现此设计以从外部检索数据,然后将其加载到webview中?上面的方法显示HTML很好,但没有加载CSS文件。

1 个答案:

答案 0 :(得分:0)

你没有。使用loadDataWithBaseURL。然后WebView将触发加载css / js / png的请求。棘手的部分是您可以为初始请求覆盖WebView.loadUrl,但是然后为每个css / js / png请求覆盖WebViewClient.shouldInterceptRequest。在那里,您可以触发网络请求并以流形式返回响应(WebResourceResponse)。