2016-10-28 14 views
-6

Meine JSON Antwort wie diese, kam jedes Mal id anders,JSON Parsen in android

{ 
    "all_user_engagements": { 
     "fa0e7579": { 
      "shared_stats": { 
       "em": { 
        "share": true 
       } 
      } 
     }, 
     "5c14558e": { 
      "shared_stats": { 
       "tw": { 
        "sharedpost_lclick": true, 
        "share": true 
       }, 
       "ln": { 
        "share": true 
       }, 
       "fb": { 
        "share": true 
       }, 
       "wa": { 
        "share": true 
       }, 
       "em": { 
        "share": true 
       } 
      } 
     } 
    } 
} 

Wie diese Art von object in Android zu bekommen? Ich versuche diesen Code zu erhalten JSONObject.

JSONObject mAllUserJsonObject = parentObject.getJsonobject("all_user_engagements"); 
+1

Ihr JSON ist ungültig. Bitte überprüfen Sie es einmal. –

+0

@ subrahmanyamboyapati Nein. Ich habe es überprüft. Json gültig –

+0

#Hitesh fügen Sie Ihre JSON hier http://jsonviewer.stack.hu/ –

Antwort

1

Sie können die JSON durch Iterieren durch sie, so etwas wie unten analysieren:

Iterator<String> keysIterator = mAllUserJsonObject.keys(); 
while (keysIterator.hasNext()) 
{ 
    String keyStr = (String)keysIterator.next(); // This would be "fa0e7579" or "5c14558e" 
    JSONObject valueObject = mAllUserJsonObject.getJSONObject(keyStr); 
} 

Und ich hoffe, Sie valueObject als die Schlüssel bekannt sind, Sie analysieren kann.

-2

Benutzer GSON Parser und erstellen Stamm-Modell für all_user_engagements.

0

versuchen Sie mit HashMap und erhalten Sie den Schlüssel und die Werte.

Obwohl ich kein Fan von diesem Konzept bin, aber dann können Sie eine Zeichenfolge überprüfen und tun, was auch immer Sie auf den Tasten ausführen möchten.

Map<String, Object> retMap = new Gson().fromJson(
    jsonString, new TypeToken<HashMap<String, Object>>() {}.getType() 
);