sql >> Database teknologi >  >> RDS >> Mysql

Kan ikke liste dataene i min Android-applikation fra Mysql

Error parsing data org.json.JSONException: Value get_all_products.php of type java.lang.String cannot be converted to JSONObject

angiver, at du ikke har gyldig json-streng i din resopnse, der kommer fra webservice. På grund af dette jObj = isValidJson(json); returnerer ikke noget json-objekt.

I din ovenstående kode, på

json = sb.toString();

Du opretter en streng navngivet som json og tildeler strengbyggerobjektværdi til den. Men din logcat siger, at du ikke går med gyldig json-streng på under linjen,

try {
                        jObj = new JSONObject(json);
                    } catch (JSONException e) {
                        Log.e("JSON Parser", "Error parsing data " + e.toString());
                    }

Så det kaster fejl om parsing af json-streng. I dette tilfælde skal du kontrollere, om du går til en gyldig json-streng fra serveren som svar. Foretag nogle ændringer i ovenstående kode:

public boolean isValidJson(String test)
{
    try {
        new JSONObject(test);
        return true;
    } catch(JSONException ex) { 
        return false;
    }
}

Og i din kode:

try {
       if(isValidJson(json)
    {
      jObj = new JSONObject(json);
    } catch (JSONException e) {
              Log.e("JSON Parser", "Error parsing data " + e.toString());
          }
    } 



  1. Sådan skjules mysql-lagrede procedure

  2. Denne SELECT-forespørgsel tager 180 sekunder at afslutte

  3. MySQL union forespørgsel, rækkefølge efter 2 variabler

  4. Oracle Data Integrator (ODI)