я написал такой код, чтобы прочитать JSON значение объекта массива:Я хочу, чтобы сравнить текстовое значение из API Rest с элементом Web Application
Content, как это «
jQuery19108586557654813183_1477636156780({
"current": {
"all": {
"android": [{
"self": {
"un": 86,
"in": 2382,
"ri": 756
}
}, {
"Facebook": {
"un": 168,
"in": 570,
"cpi": 452.59000000000015,
"ri": 301
}
}, {
"CPI_1_Network": {
"un": 203,
"in": 539,
"ri": 375,
"cpi": 401.2800000000001
}
}, {
"Instagram": {
"in": 854,
"ri": 34,
"un": 9,
"cpi": 14.239999999999998
}
}, {
"Ad-Network-2": {
"in": 592,
"un": 89,
"cpi": 150.10999999999999
}
}, {
"Top-shoppers": {
"in": 892,
"cpi": 12.500000000000002,
"un": 12,
"ri": 35
}
}],
"ios": [{
"CPI_1_Network": {
"un": 55,
"ri": 97,
"in": 140,
"cpi": 98.38999999999996
}
}, {
"Ad-Network-2": {
"un": 17,
"in": 137,
"cpi": 27.279999999999994
}
}, {
"Instagram": {
"cpi": 7.8500000000000005,
"ri": 7,
"in": 197,
"un": 2
}
}, {
"Top-shoppers": {
"in": 207,
"ri": 8,
"un": 4,
"cpi": 4.08
}
}, {
"self": {
"in": 567,
"cpi": 1.21,
"un": 24,
"ri": 198
}
}, {
"Facebook": {
"in": 142,
"un": 42,
"ri": 69,
"cpi": 103.86
}
}]
},
"androidTotal": 7330,
"iosTotal": 1769,
"totalUninstall": 711,
» я хочу, чтобы прочитать это содержимое значение» "totalUniqueInstall": 7219, "totalUniqueUninstall": 711 }, "предыдущий": { "androidTotal": 4156, "iosTotal": 1063, "totalUninstall": 1120 } })
try {
URL url = new URL("url content ");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
if (conn.getResponseCode() != 200) {
throw new RuntimeException(" HTTP error code : " + conn.getResponseCode());
}
Scanner scan = new Scanner(url.openStream());
String entireResponse = new String();
while (scan.hasNext())
entireResponse += scan.nextLine();
System.out.println("Response is : " + entireResponse);
scan.close();
entireResponse =entireResponse.substring(entireResponse.indexOf("{"), entireResponse.length() - 1);
JSONObject obj = new JSONObject(entireResponse.trim());
JSONArray arr = obj.getJSONArray("current");
String uniqueInstalls = String.valueOf(obj.get("totalUniqueInstall"));
System.out.println(uniqueInstalls);
conn.disconnect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Но я получаю исключение во время выполнения в Java org.json.JSONException: JSONObject["current"] is not a JSONArray.
Пожалуйста, помогите мне в этом.
вы можете предоставить образец ожидаемого содержания JSON? – developer
Вы можете использовать контент URL. щелкните его на новой вкладке. – Ram
FAILED: installsWithAPI org.json.JSONException: JSONObject ["current"] не является JSONArray. \t в org.json.JSONObject.getJSONArray (JSONObject.java:622) \t в com.AppICE_TC_DemoApp.DemoApp_DashBoard.installsWithAPI (DemoApp_DashBoard.java:54) \t в sun.reflect.NativeMethodAccessorImpl.invoke0 (метод Native) – Ram