我的assets
文件夹下有本地html文件。我在WebView
加载此文件,我想从本地网页调用静态Java方法。
这就是我想要做的;
<div class="content">
<div class="welcome">
<p>GeneralConstants.getWelcomeMessage()</p>
</div>
我想从我的本地网页调用getWelcomeMessage()
方法。
答案 0 :(得分:2)
您可以使用JAVA Script Interface
进行Android功能与java脚本方法之间的通信。
在WebView
内运行的JavaScript可以调用您的Activity中的代码。您可以使用此操作来启动JavaScript触发器操作,例如启动新活动,或者可以使用它来从数据库或ContentProvider
获取数据。此API非常简单:只需在addJavascriptInterface
上调用WebView
方法即可。您传递一个对象,该对象的方法要暴露给JavaScript,以及在进行调用时使用的名称。
在这里看一下Android - Webview和here的一个很好的例子。
答案 1 :(得分:0)
通过WebView.addJavascriptInterface()
可以实现JavaScript与您的应用程序之间的双向通信。检查此示例:
http://android-developers.blogspot.com/2008/09/using-webviews.html
答案 2 :(得分:0)
将JavaScript代码绑定到Android代码
http://android-journey.blogspot.com/2010/01/android-webview.html
答案 3 :(得分:0)
你正在从错误的方向接近这个。您无法从HTML页面访问Java代码。
但是,您的HTML页面可以定义JavaScript接口,您的Java代码可以访问这些接口。因此,不是HTML页面从Java代码中获取欢迎消息,而是使用Java代码向HTML页面提供欢迎消息。
webView.loadUrl("javascript:setWelcomeMessage('Welcome!')");