Error parsing data org.json.JSONException: Value get_all_products.php of type java.lang.String cannot be converted to JSONObject
menyatakan bahwa Anda tidak memiliki string json yang valid di resopnse Anda yang berasal dari layanan web. Karena jObj = isValidJson(json);
. ini tidak mengembalikan objek json apa pun.
Dalam kode Anda di atas, di
json = sb.toString();
Anda membuat String bernama json dan menetapkan nilai objek pembuat string ke dalamnya. Tetapi logcat Anda mengatakan bahwa Anda tidak mendapatkan string json yang valid di baris di bawah ini,
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
Jadi itu menimbulkan kesalahan tentang penguraian string json. Dalam hal ini Anda harus memeriksa apakah Anda mendapatkan string json yang valid dari server sebagai tanggapan. Buat beberapa perubahan pada kode di atas:
public boolean isValidJson(String test)
{
try {
new JSONObject(test);
return true;
} catch(JSONException ex) {
return false;
}
}
Dan, dalam kode Anda:
try {
if(isValidJson(json)
{
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
}