webview页面如何设置以下的内容
WebSettings 的设置
调用WebView.loadUrl(String url)前一行添加如下代码设置 WebSettings。
/**
- 对 WebSettings 进行设置:添加 ua 字段和适配 h5 页面布局等
- @param mWebView 第三方的 WebView 对象
-
@param context 第三方上下文
*/
WBH5FaceVerifySDK.getInstance().setWebViewSettings(mWebView,getApplicationContext());
WebChromeClient 的重写
调用WebView.loadUrl(String url)前,WebView 必须调用setWebChormeClient(WebChromeClient webChormeClient),并重写 WebChromeClient 的如下三个函数:/**
-
android端接收H5端发来的请求
For Android >= 3.0
*/
public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType) {
if(WBH5FaceVerifySDK.getInstance().recordVideoForApiBelow21(uploadMsg, acceptType,activity))
return;
// TODO: 第三方有调用系统相机处理其他业务的话,将相关逻辑代码放在下面}
/**
- android端接收H5端发来的请求
For Android >= 4.1
*/
public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) {
if(WBH5FaceVerifySDK.getInstance().recordVideoForApiBelow21(uploadMsg, acceptType,activity))
return;
// TODO: 第三方有调用系统相机处理其他业务的话,将相关逻辑代码放在下面
}
/**-
android端接收H5端发来的请求
For Lollipop 5.0+ Devices
*/
@Override
public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> filePathCallback, FileChooserParams fileChooserParams) {
if(WBH5FaceVerifySDK.getInstance().recordVideoForApi21(webView, filePathCallback,activity, fileChooserParams)){
return true;
}
// TODO: 第三方有调用系统相机处理其他业务的话,将相关逻辑代码放在下面return true; }
注意:
如果第三方已重写以上函数,请将如上述函数体内容添加至第三方的对应函数体首行。
如果第三方没有重写以上函数,则直接按照上述所示重写即可。
Activity 的重写
WebView 所属的 Activity 必须重写如下函数:
/*
返回到WebView所属的Activity的回调
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (WBH5FaceVerifySDK.getInstance().receiveH5FaceVerifyResult(requestCode,resultCode,data))
return;
// TODO: 第三方有其他请求的返回结果要处理的话,将相关逻辑代码放在下面}
-
1 个回复
driftPang - 90后IT男
兄弟解决了么