zoukankan      html  css  js  c++  java
  • Android中webView和网页的交互

     Android中webView和网页的交互


     

    Android中webView跟网页的交互式通过JavaScript进行的。具体步骤:

    1、创建JavaScript,在点击的时候调用JavaScript中的方法

    2、在Android中创建对应的Java文件,使用@JavaScriptInterface进行方法修饰,这个方法的名字要和JavaScript中保持一致

    3、在WebView上注册JavaScript接口对应的类对象

    js中:window.契约名.方法名(参数)参数一般转换成string型传;创建自己的Java文件,文件中包含 使用@JavaScriptInterface修饰的方法,参数列表和JavaScript保持一致调用WebView.addJavaScriptInterface(第二步中实例类对象,契约名)

    html:

    <html>
    <head>
        <meta charset="utf-8">
    <body>
    <h1>今天是个没有睡好的日子</h1>
    
    <button onclick="shake()">我是一个按钮</button>
    
    <script>
        function shake(){
            var msg="猴子请来的逗比"
            window.student.sayMessage(msg)
        }
    
    </script>
    </body>
    </head>
    </html>

    Student.java

    public class Student {
        private static final String TAG = Student.class.getSimpleName();
        @JavascriptInterface
        public void sayMessage(String msg){
            Log.e(TAG, "sayMessage: "+msg );
            //使用EventBus进行数据传递
        }
    }

    MainActivity.java(部分代码)

     //获取浏览器的设置
            WebSettings settings = mWebView.getSettings();
            //打开JavaScriptEnabled(true)
            settings.setJavaScriptEnabled(true);
            //注册自定义的JavaScript接口==-------------契约名student一一对应
            mWebView.addJavascriptInterface(new Student(), "student");
  • 相关阅读:
    svn不提交.net项目中的bin
    java 与C# 时间格式 交互
    生成菜单序列号
    ashx 方法模板
    webservice使用方法
    如何配置IIS服务器?
    zepto.fullpage
    模拟单选框
    star score
    Hover show tips
  • 原文地址:https://www.cnblogs.com/shen-hua/p/5950755.html
Copyright © 2011-2022 走看看