8 回答

TA貢獻1809條經(jīng)驗 獲得超8個贊
既然是協(xié)議,就要雙方約定好,最好有接口文檔說明,json雖然只是字符串,但里面的值是有類型區(qū)別的,android說他不用標(biāo)注也許只是他覺得他能看懂你json數(shù)據(jù)的類型(但不一定是你后端本來想給的數(shù)據(jù)類型,比如你給float型,他用double取,對于精度要求不高的數(shù)值,是沒什么區(qū)別的),而iOS的可能想清楚嚴(yán)謹(jǐn)一點,他想確定確切的值類型,這時候一定要統(tǒng)一一下,要不以后出問題了你們就說不清了。

TA貢獻1802條經(jīng)驗 獲得超5個贊
實際是JSON是有類型的,""擴起來的才是字符串,"value":"1" 和 "value":1是不同的,
當(dāng)然IOS說的一定要標(biāo)注,只是他那邊不想處理,希望后臺能處理好直接用,android只是幫你處理了而已。
這不分誰對誰錯,而只是誰愿意多做點。

TA貢獻1887條經(jīng)驗 獲得超5個贊
不需要,map也能夠直接解析
{"aaa,bbb";"aaa,bbb"}
ArrayMap arrayMap = new ArrayMap();
try {
org.json.JSONObject obj = new org.json.JSONObject(content);
Iterator<String> iterator = obj.keys();
while (iterator.hasNext()) {
String key = iterator.next();
String value = (String) obj.get(key);
arrayMap.put(key, value);
}
} catch (JSONException e) {
e.printStackTrace();
}
添加回答
舉報