2

快速详细信息:我正在使用在 Android 应用程序 WebView 上显示的 ASP.NET MVC 4

在我的网络应用程序中,我有类似于以下内容的 javascript

<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript">
    function showAndroidToast(toast) {
        Android.showToast(toast);
    }
</script>

我希望通过字符串“toast”将当前用户帐户传递给 android。

我尝试了几种不同的方法将帐户名称作为字符串传递给 android,但都没有奏效,我认为这是因为 javascript 是在新线程上执行的。是否有可能做到这一点?

4

1 回答 1

0

我正在编辑上一个答案,因为这个问题的要求与提出的标题有很大不同。这不是关于如何将 Javascript 变量作为字符串传递给 android 的 (java) 类。这更像是一个与Android框架和ASP.NET Web服务之间的交互有关的问题。所以,特此我发布了一个广泛处理这个主题的链接(一篇写得很好的文章)http://www.codeproject.com/Articles/304302/Calling-Asp-Net-Webservice-ASMX-From-an -安卓应用。[注意:此解决方案利用了 Android 平台的 KSOAP 库 jar。]

基本上,您会希望其中一种 Web 服务方法返回登录用户,该方法可以由 Android 的本机 java 类调用(例如,我们称其为“soapActivity”)。现在,为了将此信息从 java 类“soapActivity”传送到 webView,请使用 webView 实例变量的 addJavascriptInterface() 方法。希望这可以帮助。

于 2013-04-22T16:51:17.590 回答