Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo crear un objeto Json anidado en Java?

Quiero programar un objeto JSON anidado para mi dispositivo Android, pero ¿cómo? Sólo tengo experiencia básica con Json, así que apreciaría si alguien me pudiera ayudar con el siguiente código:

{ "command": "login", "uid": "123123123", "params": { "username": "sup", "password": "bros" } } 

Editar:

  • Cómo hacer referencia a un estilo en un tema personalizado
  • Android 4.3 Perfil de GPU en pantalla - tiempo de espera de gfx largo
  • Android Studio: Nuevo directorio creado que no aparece en la vista de carpetas
  • En Android; ¿Es mejor aplicar un OnClickListener o usar android: onClick?
  • Android 5.0 Lollipop y 4.4 KitKat ignora mi red WiFi, enableNetwork () es inútil
  • Android Horizontal LinearLayout - Envolver elementos
  • El código siguiente resuelve el problema:

     loginInformation = new ArrayList<NameValuePair>(); JSONObject parentData = new JSONObject(); JSONObject childData = new JSONObject(); try { parentData.put("command", "login"); parentData.put("uid", UID.getDeviceId()); childData.put("username", username.getText().toString()); childData.put("password", password.getText().toString()); parentData.put("params", childData); } catch (JSONException e) { e.printStackTrace(); } loginInformation.add(new BasicNameValuePair("content", parentData.toString())); 

  • ViewPager con fragmentos - onPause (), onResume ()?
  • Portar una aplicación de 100 Actividades a Fragmentos sin morir
  • La actividad ha filtrado la ventana que fue agregada originalmente
  • Deslizamiento entre fragmentos
  • ¿Cómo usar el comando su sobre adb shell?
  • RecyclerView superposición sin sombra
  • 4 Solutions collect form web for “Cómo crear un objeto Json anidado en Java?”

    Es necesario crear un JSON , y agregar que JSON como un parámetro en su POST . Para hacer eso probablemente debería:

     post.add(new BasicNameValuePair("data",json.toString()); 

    Puede usar org.json.JSONObject , está incluido en el Android SDK .

    BasicNameValuePair es lo que se utiliza para agregar parámetros POST. Es un poco poco claro lo que usted está pidiendo. ¿Está usted preguntando cómo, dado que JSON, para enviar los valores de param como parámetros de post?

    Usted necesita primero analizar el JSON, después sacar los parámetros, después agregarlos al poste del molde, como esto,

     JSONObject jo = new JSONObject(jsonString); JSONObject joParams = jo.getJSONObject("params"); String username = joParams.getString("username"); post.add(new BasicNameValuePair("username",username); 

    Por supuesto, querrá comprobar el JSON para asegurarse de que el objeto params existe y para asegurar que el parámetro username salga.

    Cree una clase de modelo para el Json, inicialícela con sus datos. A continuación, utilice Google Gson para convertirlo en Json también desde Json a Volver al objeto. Y también aquí hay dos enlaces que hacen su vida más fácil de usar Json. Editor en línea de Json. Puede comprobar que el json generado esté en el formato correcto o no. http://www.jsoneditoronline.org/ Y Json a POJO Generado (Generador de Clase Modelo) http://www.jsonschema2pojo.org/

    Si solo desea enviar un bloque de JSON al servidor, no debe usar pares de valores clave, sino simplemente publicar los datos como StringEntity .

      HttpPost request = new HttpPost(api_call); request.setHeader("Content-Type", "text/javascript"); request.setEntity(new StringEntity(jsonString); httpClient.execute(request); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.