欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

webview中调用Android如何关闭app页面

程序员文章站 2022-12-03 13:42:56
在Android项目中,有时候整个页面是个webview,用来加载我们制作好的网页。 那么时常会有网页和app进行交互的需求,比如,需要我们点击网页上的按钮后,关闭当前页面回到a...

Android项目中,有时候整个页面是个webview,用来加载我们制作好的网页。
那么时常会有网页和app进行交互的需求,比如,需要我们点击网页上的按钮后,关闭当前页面回到app。

怎么实现呢?
首先,可以在加载webview的activity里定义一个内部类,像下面这样:

    public class WebAppInterface {
        @JavascriptInterface
        public void backToApp() {
            finish();
        }
    }

其中@JavascriptInterface标签表示这个方法是供JS调用的。

然后给webview作如下配置,下面几行都是必要的,还有其他配置未列出,可参考:
Android webview里加载显示网页,显示进度,点击网页链接跳转到app页面

//支持JavaScript
WebSettings setting = webview.getSettings();
setting.setJavaScriptEnabled(true);
//给web提供调用接口
webview.addJavascriptInterface(new WebAppInterface(), "Android");
webview.getSettings().setDomStorageEnabled(true);

然后就可以在JS中调用如下:


这样,就实现了点击网页按钮销毁当前页面的功能。