0
我試圖將一些信息從Android本機類傳遞給javascript。 我正在接受一個包,將其轉換爲JSONObject並傳遞它的字符串表示形式。 但是,當試圖解析它在JS中,它失敗。Android Phonegap - 將JSONObject傳遞給javascript
這是我做的:
JSONObject jsonObject = new JSONObject();
for (String key : bundle.keySet()) {
Object value = bundle.get(key);
try {
jsonObject.put(key, value.toString());
} catch (JSONException e) {
// Do nothing
}
}
final String jsStatement = String.format(
"window.doSomething('%s');", jsonObject.toString());
cordova.getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
webView.loadUrl("javascript:" + jsStatement);
}
});
你能告訴我,爲什麼它沒有被在JS解析,我該怎麼解決呢?
當你運行這段代碼,會發生什麼?任何在logcat中? – MBillau
是的,它得到的JS方法,當我試圖做的JSON.parse(...)與收到的字符串它說:「意外的令牌在1」 – Asaf
你可以呼應JSON對象,然後通過jsonlint運行它或者其他的東西?聽起來像你可能並沒有真正的JSON對象或其他東西。如果你正在創建一個JSON對象,然後做'window.doSomething('''我想也許這個''''是意想不到的標記? – MBillau