Error parsing data org.json.JSONException: Value get_all_products.php of type java.lang.String cannot be converted to JSONObject
nói rằng bạn không có chuỗi json hợp lệ trong resopnse của bạn đến từ dịch vụ web. Trở thành jObj = isValidJson(json);
này không trả về bất kỳ đối tượng json nào.
Trong mã trên của bạn, tại
json = sb.toString();
Bạn đang tạo Chuỗi có tên là json và gán giá trị đối tượng trình tạo chuỗi cho nó. Nhưng bạn logcat nói rằng bạn không nhận được chuỗi json hợp lệ ở dòng dưới đây,
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
Vì vậy, nó ném lỗi về phân tích cú pháp chuỗi json. Trong trường hợp này, bạn phải kiểm tra xem bạn có truy cập chuỗi json hợp lệ từ máy chủ để phản hồi hay không. Thực hiện một số thay đổi trong mã trên:
public boolean isValidJson(String test)
{
try {
new JSONObject(test);
return true;
} catch(JSONException ex) {
return false;
}
}
Và, trong mã của bạn:
try {
if(isValidJson(json)
{
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
}