android 上面js java数据互传
16lz
2021-01-24
从java当中把数据传递给js :
1.在 html当中做一个 alert
- <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <htmlxmlns="http://www.w3.org/1999/xhtml">
- <head>
- <metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
- <title>无标题文档</title>
- <scriptlanguage="javascript">
- document.write(method.xxx("<i>","</i>"));
- </script>
- </head>
- <body>
- </body>
- </html>
2.在android onCreate方法当中. 开启js支持
- webView=(WebView)findViewById(R.id.
- webView.getSettings().setAllowContentAccess(true);
- webView.getSettings().setAllowFileAccess(true);//若html是一个文件框的话,就可以浏览本地文件
- webView.getSettings().setAppCacheEnabled(false);//缓存
- webView.getSettings().setBuiltInZoomControls(false);
- webView.getSettings().setDatabaseEnabled(true);
- webView.getSettings().setDisplayZoomControls(false);
- webView.getSettings().setDomStorageEnabled(true);//设置支持html5本地存储
- webView.getSettings().setSupportZoom(false);
- webView.getSettings().setJavaScriptEnabled(true);//开启javascript支持
- webView.loadUrl("file:///android_asset/test.html"); JsObj jo = new JsObj(this); webView.addJavascriptInterface(jo, "method");
3. 加入数据对象
- publicclassJsObj{
- privateContextcon;
- publicJsObj(Contextcon){
- this.con=con;
- }
- publicStringxxx(Stringtop,Stringend){
- return"哈哈。拿到数据了哦哦哦哦哦哦";
- }
- }
把js数据传递给java:
1.在html当中 弹出alert弹出框.
- <scriptlanguage="javascript">
- <!--alert('111111');!-->
- document.write(roid.gps("<i>","</i>"));
- </script>
java代码中;
- webView.setWebChromeClient(newWebChromeClient(){
- @Override
- publicbooleanonJsAlert(WebViewview,Stringurl,Stringmessage,
- finalandroid.webkit.JsResultresult){
- System.out.println(message); //即js传入的数据
- returntrue;
- };
- });
更多相关文章
- Android(安卓)Vibrate
- Android(安卓)Binder 机制初步学习 笔记(三)—— Binder 进程通讯
- Android:Sqlite插入大批量数据
- fanfou(饭否) android客户端 代码学习3
- Android(安卓)uevent
- Android开发实践教程
- Android四大图片缓存框架之-Fresco之initialize(二)
- Android中如何处理Sqlite查询结果中的NULL数据列?
- Android登录注册功能 数据库SQLite验证