sql >> Databáze >  >> RDS >> Mysql

Nelze vypsat data v mé aplikaci pro Android z Mysql

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

uvádí, že ve své odpovědi pocházející z webové služby nemáte platný řetězec json. Kvůli tomu jObj = isValidJson(json); nevrací žádný objekt json.

Ve výše uvedeném kódu na adrese

json = sb.toString();

Vytváříte řetězec pojmenovaný jako json a přiřazujete mu hodnotu objektu pro tvorbu řetězců. Ale vy logcat říká, že nedostáváte platný řetězec json pod řádkem,

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

Takže to vyvolá chybu o analýze řetězce json. V tomto případě musíte zkontrolovat, zda v odpovědi odešlete ze serveru platný řetězec json. Proveďte nějaké změny ve výše uvedeném kódu:

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

A ve vašem kódu:

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



  1. Hibernace> CLOB> Oracle :(

  2. převést řetězec data na pole datetime mysql

  3. Nahrání obrázku Laravel do databáze

  4. ORACLE Omezení povolit hodnotu Null, IF