0

我的 Android 代码中有一个 JavascriptInterface 和一个 setter/getter:

mWebView.addJavascriptInterface(new AccessibleMethods(), "Android");

private class AccessibleMethods {
    private boolean isWorking;
    public void setIsWorking(boolean working)
    {
        this.isWorking = working;
        // A toast message here of this.isWorking displays true
    }
    public boolean getIsWorking()
    {
        return this.isWorking;
    }
}

在我的 JavaScript 代码中,我调用了该函数:

Android.setIsWorking(true);

但是当我尝试以另一种方法或在类外部访问 isWorking in Java 时,它没有正确的值。

AccessibleMethods methods = new AccessibleMethods();
methods.getIsWorking(); // returns wrong or no value

我需要这个来访问 JavaScript 变量 onKeyDown。

有什么建议么?

4

1 回答 1

1

如果你想共享从 JavaScript 传递的数据,你应该在方法调用中使用相同的对象实例,或者使用实例变量。

private AccessibleMethods methods = new AccessibleMethods();
//... 
mWebView.addJavascriptInterface(methods, "Android");
//..
boolean isWorking = methods.getIsWorking();
于 2013-05-22T08:04:50.140 回答