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
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM