码迷,mamicode.com
首页 > 移动开发 > 详细

Android 与web的相互调用

时间:2016-05-12 13:39:38      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:

这篇文章简单讲解 Android与web的简单交互。
1:Android显示web网页:利用Android的WebView控件展示网页
2:web网页调用Android方法:利用注解的方式将Android的方法公开,在javascript中调用公开的方法。

接下来,展示具体的小例子:

1:WebView显示web网页:

布局:

<WebView
        android:id="@+id/loadWeb"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/web"
</WebView>

代码:

        webView = (WebView)findViewById(R.id.loadWeb);
        //获得对webview的设置
        WebSettings settings = webView.getSettings();
        //设置允许缩放
        settings.setSupportZoom(true);
        //设置允许脚本
        settings.setJavaScriptEnabled(true);
        //设置客户端
        webView.setWebChromeClient(new WebChromeClient());
        webView.setWebViewClient(new WebViewClient());
        //加载网址
        webView.loadUrl("http://www.baidu.com");

最后注意配置权限:

<uses-permission android:name="android.permission.INTERNET" />

运行就可以看到百度首页。

2:web调用Android方法:

1:布局:

<WebView
        android:id="@+id/loadWeb"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/web"
</WebView>

2 : android公开方法:

public class LoadJS {
    private Context context;
    public LoadJS(Context context){
        this.context = context;
    }

    //以注解的方式公开该方法(webkit是浏览器内核),以供网页调用
    @android.webkit.JavascriptInterface
    public void MyToast(String cc){
        Toast.makeText(context, "我来自网页调用"+cc, Toast.LENGTH_SHORT).show();
    }
}

3 : 网页调用公开方法:
在Android项目文件夹src–>main下新建assets文件夹,在assets文件夹中新建html页。
html代码,其中的js部分代码可在Android完成注解公开方法后再完成:

<html>
<head>
    <title>网页标题</title>
    <script>
    function clickq(){
    <!--获取输入框的值-->
        var cc = document.getElementById("content").value;
            <!--调用公开的方法-->
            android.MyToast(cc);
    }
</script>
</head>
<body>
<input value="点击输入" id="content"/>
<input type="button" value="按钮" onclick="clickq()" id="button"/>
</body>
</html>

运行即可。

Android 与web的相互调用

标签:

原文地址:http://blog.csdn.net/little_shengsheng/article/details/51364293

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!