android Webview基本配置以及android与js交互
2016-04-06 15:18
531 查看
最近一直研究webview的使用,包含webview配置、android与js的交互。不多说了。
1、先看看webview基本设置:
WebSettings settings = webView.getSettings();
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
settings.setDomStorageEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setJavaScriptEnabled(true);
settings.setAllowFileAccess(true);//设置可以访问文件
settings.setSupportZoom(false);//不支持缩放
settings.setBuiltInZoomControls(false);//设置此属性,可任意比例缩放
//JsCallAndroidLocal该类是JS与android交互时,JS调用android本地方法的类
webView.addJavascriptInterface(new JsCallAndroidLocal(this,this),”Android”);
//MyWebClient继承WebViewClient: 是主要处理使用WebView进行网页的浏览,不调用本地的浏览器
webView.setWebViewClient(new MyWebClient());
//MyWebChormClient继承WebChromeClient:主要处理对网页中加载时,此时本地可对应显示加载框
webView.setWebChromeClient(new MyWebChormClient(mHandler));
//加载页面
webView.loadUrl(url);
2、android 调用JS
(1)调用无参数的JS方法
webView.loadUrl(“javascript:getBaseInfo()”);
(2)调用有参数的JS方法
webView.loadUrl(“javascript:getBaseInfo(‘”+uid+”’,’”+id+”’,’”+userName+”’)”);
3.JS 调用android本地方法
JS文件中方法(webview_videoplayer.js):
/**
* 调用android本地方法
*/
function playVideo(videoUrl){
}
/**
*从网页中获取videoUrl
*/
function getVideoUrl(){
}
在HTML中调用:
html中引用JS文件 “src=js/webview_videoplayer.js”
调用JS中的方法,通过JS调用android本地gotoPlayVideo()
< input type=”button” name=”playVideo” value=”播放” onclick=”getVideoUrl()”/>
1、先看看webview基本设置:
WebSettings settings = webView.getSettings();
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
settings.setDomStorageEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setJavaScriptEnabled(true);
settings.setAllowFileAccess(true);//设置可以访问文件
settings.setSupportZoom(false);//不支持缩放
settings.setBuiltInZoomControls(false);//设置此属性,可任意比例缩放
//JsCallAndroidLocal该类是JS与android交互时,JS调用android本地方法的类
webView.addJavascriptInterface(new JsCallAndroidLocal(this,this),”Android”);
//MyWebClient继承WebViewClient: 是主要处理使用WebView进行网页的浏览,不调用本地的浏览器
webView.setWebViewClient(new MyWebClient());
//MyWebChormClient继承WebChromeClient:主要处理对网页中加载时,此时本地可对应显示加载框
webView.setWebChromeClient(new MyWebChormClient(mHandler));
//加载页面
webView.loadUrl(url);
2、android 调用JS
(1)调用无参数的JS方法
webView.loadUrl(“javascript:getBaseInfo()”);
(2)调用有参数的JS方法
webView.loadUrl(“javascript:getBaseInfo(‘”+uid+”’,’”+id+”’,’”+userName+”’)”);
3.JS 调用android本地方法
JS文件中方法(webview_videoplayer.js):
/**
* 调用android本地方法
*/
function playVideo(videoUrl){
window.Android.gotoPlayVideo(videoUrl);
}
/**
*从网页中获取videoUrl
*/
function getVideoUrl(){
var videoUrl = document.getElementById("videoUrl"); playVideo(videoUrl.value);
}
在HTML中调用:
html中引用JS文件 “src=js/webview_videoplayer.js”
调用JS中的方法,通过JS调用android本地gotoPlayVideo()
< input type=”button” name=”playVideo” value=”播放” onclick=”getVideoUrl()”/>
相关文章推荐
- android 各国语言对应的缩写
- Android Fragment 你应该知道的一切
- Android开发小技巧系列之避免连续点击
- Android之Notification的多种用法
- Android沉浸式状态栏兼容4.4手机的实现
- Android 热修复原理
- Android中一些常用类的常用方法(Math、Random、Color、Paint、Canvas、Bitmap、BitmapFactory)
- Android list加载图片工具类
- Android ADB server didn't ACK * failed to start daemon * 简单有效的解决方案
- android系统的事件分发与消费机制
- Android框架设计之-总结
- 兼容 Android 4.4 透明状态栏与导航栏
- Android适配
- Manifest.xml 中android:windowSoftInputMode属性详解
- android 混淆
- Android 元素置于父元素底部
- 使用DatagramSocket发送、接收数据(Socket之UDP套接字)android遥控器
- Android TextView横向滚动(跑马灯效果)
- android 5.0及以上,seekbar thumb 透明效果出现父布局背景颜色的解决方法
- toolbar自定义右边的菜单注意