天天看點

Android與JS互動,json傳參問題

一、JS調用Android的方法

JS調用安卓的方法,并且傳遞的參數為json格式的字元串(JSONObject.toString()),

例如: var json = {"name":"XJY","age":25",company":"CSII"};

直接将json作為參數傳遞:window.name.jsToClient(json);

Android擷取的參數是不可用的,列印出來的是undefinded。

JS要這樣處理,再作為參數傳遞給原生:

var jsonStr = JSON.stringify(json);

window.name.jsToClient(jsonStr);

這樣Android才能接受到json的字元串。

二、Android調用JS的方法

錯誤的,這樣JS是收不到Android傳的參數的

try{

JSONObject jsonObject = new JSONObject();

jsonObject.put(“name”,“張三”);

jsonObject.put(“age”,“100”);

jsonObject.put(“password”,“123456”);

String call = “javascript:clientToJS(\“”+jsonObject.toStirng+“\”)”;

mWebView.loadUrl(call);

}catch(Exception e){

}

正确的,最簡單就是拼接字元串

---------------------

作者:xjy5566

來源:CSDN

原文:https://blog.csdn.net/xjy5566/article/details/78607231

版權聲明:本文為部落客原創文章,轉載請附上博文連結!

轉載于:https://www.cnblogs.com/tc310/p/11116106.html

繼續閱讀