我附上一個WebViewClient
我WebView
像這樣:Android的 - 如何攔截安卓WebViewClient表單POST的API級別4
webView.setWebViewClient(new MyWebViewClient());
這是我實現的MyWebViewClient
:
private class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.loadUrl(url);
return true;
}
}
我給WebView
一個URL加載通過loadUrl()
。如果我在頁面中有一個鏈接(a href...
),我的shouldOverrideUrlLoading
方法被調用,我可以攔截鏈接點擊。
但是,如果我有一個表格的方法是POST
,則不會調用shouldOverrideUrlLoading
方法。
我注意到類似的問題在這裏:http://code.google.com/p/android/issues/detail?id=9122這似乎建議覆蓋postUrl
在我的WebView
。但是,此API僅可從API級別5開始使用。
如果我在API級別4上,該怎麼辦?有沒有其他方法來攔截表單帖子?
您可以嘗試覆蓋WebViewClient中的onPageStarted回調。 – bhups 2010-09-08 03:27:26
謝謝。我試過了,它工作正常,但問題是我不希望窗體的頁面加載 - 這是一個假的URL,所以我最終得到的Web視圖錯誤頁面。我通過檢查onPageStarted來解決這個問題,如果URL匹配我的表單URL,如果是的話,在我的應用程序中處理這個,然後告訴webViewClient返回。這聽起來合理嗎? – manisha 2010-09-09 17:07:20
您是否找到解決方案? – Sohaib 2015-03-31 10:54:42