Android 与Html5 js相互总结
来源:互联网 发布:苹果网络锁破解 编辑:程序博客网 时间:2024/05/21 11:34
最近有涉及到android与Html 5 JS交互的工作,来记录总结一下。
首先,android WebView webView 设置
webview.getSettings().setJavaScriptEnabled(true);
//绑定建立的javascript对象
webview.addJavascriptInterface(new JsInterface(),"android");
其中,JsInterface对象是android自定义的专门提供给js调用的;
“android”是和Js相对应的一个参数,Html5见到android就会去调用JsInterface()里面的方法
webview.loadUrl(url);//url是初始界面的url
接下来,监听该url是否加载完成:
webview.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view,String url){
super.onPageFinished(view,url);
//如果是监听初始url加载完成后,需要调用js的话,使用该方法去调用js
webview.loadUrl(javascript:functionA(name));
//其中,functionA(String name)必须与Html5中的方法是一致的。
}
});
public class JsInterface{
@JavascriptInterface//这个需要在API17以上需要在每个方法前加上
public void functionB(String json){
//若需要更新UI(其实就是要更新主线程UI),此时若Html5调用此方法通知native是在非主线程中,如果直接更新页面显示常会报错。抛出异常:android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
runOnUiThread(new Runnable(){
@Override
public void run(){
//在此更新UI即可。
}
}
}
}
- Android 与Html5 js相互总结
- js与android相互调用
- Android 与 Html5 、JS交互
- Android 里js 与java相互调用
- Android WebView与网页JS相互调用
- Android ---js与java的相互调用
- Android webview 与 JS相互调用
- Android WebView JAVA 与 JS 相互调用
- Android ---js与java的相互调用
- Android ---js与java的相互调用
- Android activity 与 js 相互调用
- HTML5,js与Android native通信
- JQuery对象与js对象的相互转换方法总结
- Android webview开发中 js与android相互调用
- android通过webview组件实现与js相互调用
- Android WebView js 与 java 之间相互通信
- Android的WebView中js与java代码相互调用
- Android的WebView中js与java代码相互调用
- angularJS1 log打印日志
- 文章标题
- 搭建Git服务器遇到的那些坑
- java项目和C#项目实现通信
- Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)
- Android 与Html5 js相互总结
- ORM框架2
- 分分钟 面试题 n! 到底考什么?
- 正则
- 复制构造函数(1)
- 使用VC++获得从摄像头的图像(转)
- Java泛型
- 任务2
- 92. Reverse Linked List II