我正在尝试使用
WebView开发Android浏览器应用程序,使用户能够从自定义协议访问内容.自定义协议可能是foobar://
我想拦截对此自定义协议的所有请求.这意味着:
> GET请求
> POST请求
我需要能够将这些操作的结果交还给WebView.
可以使用shouldInterceptRequest(可从API级别11获得)处理GET请求.
现在我的问题是:我如何能够接受和处理POST请求?
几乎同样的问题已被问及here和here,但是没有找到他们的问题的解决方案.
解决方法
你有没有试过覆盖post方法做类似的事情:
private class ViewerWebViewClient extends WebViewClient {
@Override
public void onPageFinished( WebView view,String url ) {
}
@Override
public boolean shouldOverrideUrlLoading( WebView view,final String url ) {
if(!url.contains(MYKEYWORD))
{
Toast.makeText(getActivity(),POSTING,Toast.LENGTH_LONG).show();
return true;
}
return super.shouldOverrideUrlLoading(view,url);
}
}
这只是一个想法.也许可以帮到你.