Note that there are some explanatory texts on larger screens.

plurals
  1. POAndroid Facebook SDK parsing JSON
    primarykey
    data
    text
    <p>I Have problem with parsing JSON code . I am working with Facebook SDK on Android. have seen many tutorials, but they don't help me.</p> <pre><code>{ "id": "1000004577", "friends": { "data": [ { "id": "11343", "statuses": { "data": [ { "from": { "name": "Maria", "id": "1134" }, "message": "...How wonderfull life ", "updated_time": "2011-07-05T21:42:29+0000", "id": "18665783" }, { "from": { "name": "Maria ", "id": "113931" }, "message": "Ab Montag geht es wieder um 8 Uhr los!\nWir werden jetzt ein Woche vom Herrn Vollrerrichtetitet die N wie möglich!!!\n\nIm auftrag von:\n\n Herrn Siebert", "updated_time": "2010-10-01T18:05:59+0000", "id": "158583" }, { "from": { "name": "Maria", "id": "11343" }, "message": "Esmu majas...!!! viss ir labi!!!", "updated_time": "2010-07-16T08:04:36+0000", "id": "137470438" }, { "from": { "name": "Maria ", "id": "113421" }, "message": "I miss kitkat ice-cream!:(", "updated_time": "2010-06-06T16:46:13+0000", "id": "10231545" }, { "from": { "name": "Maria", "id": "113121" }, "message": "its snowin..xD or it looks like!!!!", "updated_time": "2010-06-02T12:57:39+0000", "id": "12623356466" } ], "paging": { "previous": "https://graph.facebook.com/1134393121/statuses?limit=5&amp;fields=from,message,updated_time&amp;since=1309902149&amp;__paging_token=1866653502783", "next": "https://graph.facebook.com/1134393121/statuses?limit=5&amp;fields=from,message,updated_time&amp;until=1275483459&amp;__paging_token=126233544066466" } } }, { "id": "1179089", "statuses": { "data": [ { "from": { "name": "Kristine Vaidere", "id": "123089" }, "message": "Запомни! Если ты отключаешь мозги, то ты обязательно должна включить телефон. Что-то из этого должно работать всегда. :D", "updated_time": "2013-07-31T08:43:12+0000", "id": "1020030233771" }, { "from": { "name": "Kristine", "id": "1179239" }, "message": "bija ideāls! Paldies Prāta vētrai un maniem mīļ", "updated_time": "2013-06-09T15:20:50+0000", "id": "10200519756813" }, { "from": { "name": "Kristine ", "id": "1179089" }, "message": "Mīļie, takā es pazaudēju savu telefonu :( , man nomainijās nr. Lūdzu sūtiet man savējos un esējo :*", "updated_time": "2013-05-07T19:50:00+0000", "id": "121433892" }, { "from": { "name": "Kristine", "id": "1179589" }, "message": "nepacietīgs pūlis\n brēc, un rokām plātās baigi.\n jo katrs jau zin kā labāk vaj’g", "updated_time": "2013-02-01T14:40:26+0000", "id": "463167214" }, { "from": { "name": "Kristine", "id": "11523089" }, "message": "Manas jūtas pret dažiem cilvēkiem nav iespējams izteikt vārdos.. Tās var izteikt tikai ar lāpstu, cirvi vai kaut ko tamlīdzīgu... :D", "updated_time": "2013-01-17T21:31:59+0000", "id": "454819157" } ], "paging": { "previous": "https://graph.facebook.com/1179523089/statuses?limit=5&amp;fields=from,message,updated_time&amp;since=1375260192&amp;__paging_token=10200845330233771", "next": "https://graph.facebook.com/1179523089/statuses?limit=5&amp;fields=from,message,updated_time&amp;until=1358458319&amp;__paging_token=4548195341157" } } } ], "paging": { "next": "https://graph.facebook.com/100000425773779/friends?limit=2&amp;fields=statuses.limit(5).fields(from,message,updated_time)&amp;offset=2&amp;__after_id=1179523089" } } } </code></pre> <p>I need to get these values:</p> <pre><code> "from": { "name": "Maria ", "id": "113421" }, "message": "I miss kitkat ice-cream!:(", "updated_time": "2010-06-06T16:46:13+0000", "id": "10231545" </code></pre> <p>And then store them in the hashmap... It would be great if someone would help whit this Here is the pice of code that not work properly.</p> <pre><code>package com.androidhive.jsonparsing; import java.util.ArrayList; import java.util.HashMap; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import com.androidhive.jsonparsing.R; import com.androidhive.jsonparsing.R.id; import com.androidhive.jsonparsing.R.layout; import android.app.ListActivity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; public class AndroidJSONParsingActivity extends ListActivity { // url to make request private static String url = "https://graph.facebook.com/100000425773779?fields=friends.limit(1).fields(statuses.limit(5).fields(from,message,updated_time))?access_token=CAACEdEose0cBAJvWFqIXsQXvJvN7mZBHDn6g3ocW4HvfKZCl8JfSkeDvdQNVnVO0UyM297pcM1SlecH613j4NT1KZBCZAAG7L4hTMY7yhZCQRLwhYzHCM6zZAi3ZCwA48JXoJH31QInRO5hjWTyTFEHVL8ao7CRJVc4OLZAooqTQlgZDZD"; // JSON Node names private static final String TAG_GDATA = "data"; private static final String TAG_DATA = "data"; private static final String TAG_STATUSES = "statuses"; private static final String TAG_NAME = "name"; private static final String TAG_FROM = "from"; private static final String TAG_UPDATE = "updated_time"; private static final String TAG_ID = "id"; private static final String TAG_FRIENDS = "friends"; private static final String TAG_MESSAGE = "message"; // contacts JSONArray JSONArray contacts = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // Hashmap for ListView ArrayList&lt;HashMap&lt;String, String&gt;&gt; contactList = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;(); // Creating JSON Parser instance JSONParser jParser = new JSONParser(); // getting JSON string from URL JSONObject json = jParser.getJSONFromUrl(url); //Here starts the MESS try { // Getting Array of Contacts JSONObject arrfriends = json.getJSONObject(TAG_FRIENDS); JSONObject genData = arrfriends.getJSONObject(TAG_GDATA); JSONArray generalData = ; for(int i=0; i &lt; contacts.length(); i++) { // Loop over each each row JSONObject row = contacts.getJSONObject(i); // Get row object JSONObject c = row.getJSONObject(TAG_DATA); for(int j=0; j &lt; c.length(); j++){ JSONObject from = c.getJSONObject(TAG_FROM); String name = from.getString(TAG_NAME); String id = from.getString(TAG_ID); String message = c.getString(TAG_MESSAGE); String update = c.getString(TAG_UPDATE); String mId = c.getString(TAG_ID); // creating new HashMap HashMap&lt;String, String&gt; map = new HashMap&lt;String, String&gt;(); // adding each child node to HashMap key =&gt; value map.put(TAG_NAME, name); map.put(TAG_ID, id); map.put(TAG_MESSAGE, message); map.put(TAG_UPDATE, update); map.put(TAG_ID, mId); // adding HashList to ArrayList contactList.add(map); } } } catch (JSONException e) { e.printStackTrace(); } /** * Updating parsed JSON data into ListView * */ ListAdapter adapter = new SimpleAdapter(this, contactList, R.layout.list_item, new String[] { TAG_NAME, TAG_MESSAGE, TAG_UPDATE }, new int[] { R.id.name, R.id.email, R.id.mobile }); setListAdapter(adapter); // selecting single ListView item ListView lv = getListView(); // Launching new screen on Selecting Single ListItem lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView&lt;?&gt; parent, View view, int position, long id) { // getting values from selected ListItem String name = ((TextView) view.findViewById(R.id.name)).getText().toString(); String cost = ((TextView) view.findViewById(R.id.email)).getText().toString(); String description = ((TextView) view.findViewById(R.id.mobile)).getText().toString(); // Starting new intent Intent in = new Intent(getApplicationContext(), SingleMenuItemActivity.class); in.putExtra(TAG_NAME, name); in.putExtra(TAG_MESSAGE, cost); in.putExtra(TAG_UPDATE, description); startActivity(in); } }); } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload