可以从javascript调用Java类吗?

is it posible to call java class from javascript?

本文关键字:Java 类吗 调用 javascript      更新时间:2023-09-26

我需要在javascript中为android应用程序制作一些UI部分,因为我在javascript中编写了一些代码并将其加载到android web view中。现在,我想从javascript调用java类。

是否可以从javascript调用java类?

提前感谢!

这是可能的,但我不会为你给定的用例这样做:)(UI可以用Android框架完成)

你可以添加所谓的"Javascript接口",这基本上是从Javascript到Java代码的链接。首先,定义一个要绑定的类,其中包含要调用的方法,并将其添加到WebView中:

    class HelloInterface  
    {  
        public void test(String name)  
        {  
            Log.i(TAG, "Hello " + name); 
        }  
    } 
    webview.addJavascriptInterface(new HelloInterface(), "HELLO");  
然后,从你的javascript代码中,你可以调用
window.HELLO.test("Webview");

参考以下网址,

http://www.rgagnon.com/javadetails/java - 0170. - html

Post #6 of-> http://ubuntuforums.org/showthread.php?t=565819

使用起来真的很简单(而且很酷):

webView.addJavascriptInterface(js, "pageObject");

js是一个java对象在你的活动(或某处你初始化的webview), pageObject是名称空间标识符(变量),你可以在你的网页上使用javaScript。