我在android中使用webview創建了一個web瀏覽器。我的目標是在加載之前控制webview的內容。每當webview的內容向任何域服務器發出請求時,它都必須通過shoulInterceptRequest()。如果網址指向任何視頻上傳網站(youtube.com,vimeo.com),我可以將其更改爲某些拒絕訪問的網址,以便視頻不會被加載。在android webview中阻止視頻 - shouldInterceptRequest()的替代方法
@Override
public WebResourceResponse shouldInterceptRequest(final WebView view, String url) {
try {
if (access.permission(url)) {
return super.shouldInterceptRequest(view, url);
}
} catch (Exception e) {
e.printStackTrace();
}
return getResponseData();
}
private WebResourceResponse getResponseData() {
try {
String str = "Access Denied";
InputStream data = new ByteArrayInputStream(str.getBytes("UTF-8"));
return new WebResourceResponse("text/css", "UTF-8", data);
} catch (IOException e) {
return null;
}
}
但shoulInterceptRequest()從API 11.速效我需要它從API 8
工作有沒有落實任何替代辦法?如果要在加載任何數據之前將任何視頻上傳到網站,我需要阻止該網址。
shouldOverrideUrlLoading()只針對主URL,它是加載到webview中。也就是說,webview.loadUrl(www.example.com)。如果www.example.com包含視頻,則日誌不會顯示該網址。它總是在shouldOverrideUrlLoading中顯示www.test.com – 2012-07-14 02:05:58