【问题标题】:Android: Calling a function in java from javascript passing variablesAndroid:从javascript传递变量调用java中的函数
【发布时间】:2012-05-03 16:29:58
【问题描述】:

我有点迷路了......我一直在网上寻找,但我没有找到任何我想要的东西。这就是我在 java 中所做的事情

ClsAccessor accessors = new ClsAccessor();



class ClsAccessor{
    public String WorkingWithJason(String Json){
        String JsonVar;
        JsonVar ="";
        if (Json != ""){
            generateNoteOnSD("JsonFile.txt", Json);
        }
        JsonVar = getfileFromSDCard("JsonFile.txt");
        return JsonVar;
    }
    public void generateNoteOnSD(String Name, String data){
    //....
    }

    public String getfileFromSDCard(String Name){
    //....
    String data;
    //data = ".....";
    return data;
    }
}


public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.addJavascriptInterface(accessors, "accessor");
    mWebView.loadUrl("file:///android_asset/Main.html");
    mWebView.setWebViewClient(new HelloWebViewClient());


}

而且这正是我在 javascript 上所需要的

var text = "";
function SendData(RecievedTextVariable){
    var text = accessor.WorkingWithJason(RecievedTextVariablejsn);  
    document//accessor.outWorkingWithJason(textjsn);  
    $("#main_div").html("bbbbbb bbbbbbbb"+text);
} 

有什么想法或例子吗?

【问题讨论】:

    标签: java javascript android variables var


    【解决方案1】:
    mWebView.addJavascriptInterface(new YourInterface(), "something");
    
    class YourInterface{
        public void out(String value){
            // do something
        }
    }
    

    something.out(text)代替document.out(text)

    【讨论】:

    • 我可以在方法中返回并在javascript中接收它吗??
    • 自己试试岂不是更有趣?如果您有任何问题,尽管问。
    猜你喜欢
    • 2015-07-23
    • 2016-11-07
    • 1970-01-01
    • 1970-01-01
    • 2019-04-19
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    • 2013-08-18
    相关资源
    最近更新 更多