package com.androguide.apkreator.fragments; import android.os.Bundle; import android.os.StrictMode; import android.support.v4.app.Fragment; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import com.androguide.apkreator.R; import com.androguide.apkreator.helpers.twitter.Tweet; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import org.json.JSONArray; import org.json.JSONObject; import java.util.ArrayList; public class TwitterFragment extends Fragment { private ActionBarActivity fa; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); StrictMode.setThreadPolicy(policy); LinearLayout ll = (LinearLayout) inflater.inflate( R.layout.twitter_fragment, container, false); fa = (ActionBarActivity) super.getActivity(); new Thread(new Runnable() { @Override public void run() { ArrayList<Tweet> tweetsArray = loadTweets(); for (int i = 0; i < tweetsArray.size(); i++) { Log.e("Tweet Author", tweetsArray.get(i).getAuthor()); Log.e("Tweet Content", tweetsArray.get(i).getContent()); } } }).start(); return ll; } @Override public void onPause() { // TODO Auto-generated method stub super.onPause(); } @Override public void onResume() { // TODO Auto-generated method stub super.onResume(); } private ArrayList<Tweet> loadTweets() { ArrayList<Tweet> tweets = new ArrayList<Tweet>(); try { Log.e("Loading Tweets...", "..."); HttpClient hc = new DefaultHttpClient(); HttpGet get = new HttpGet( "https://api.twitter.com/1.1/search/tweets.json?q=%40android"); HttpResponse rp = hc.execute(get); if (rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { String result = EntityUtils.toString(rp.getEntity()); JSONObject root = new JSONObject(result); JSONArray sessions = root.getJSONArray("results"); for (int i = 0; i < sessions.length(); i++) { JSONObject session = sessions.getJSONObject(i); Tweet tweet = new Tweet(); tweet.setContent(session.getString("text")); tweet.setAuthor(session.getString("from_user")); tweets.add(tweet); Log.e("text", session.getString("text")); Log.e("user", session.getString("from_user")); } } } catch (Exception e) { Log.e("TwitterFeedActivity", "Error loading JSON", e); } return tweets; } }