Guest User

Untitled

a guest
Nov 18th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.29 KB | None | 0 0
  1. {
  2. "status": "ok",
  3. "source": "techcrunch",
  4. "sortBy": "top",
  5. -"articles": [
  6. -{
  7. "author": "Devin Coldewey",
  8. "title": "A mesh network spontaneously erupts in the US and helps connect Puerto Rico",
  9. "description": "When goTenna put out their Mesh device earlier this year, I thought the off-grid gadgets would be great for an emergency kit or back-country hike. But it..",
  10. "url": "https://techcrunch.com/2017/11/14/a-mesh-network-spontaneously-erupts-in-the-us-and-helps-connect-puerto-rico/",
  11. "urlToImage": "https://tctechcrunch2011.files.wordpress.com/2017/11/gotennapr.png",
  12. "publishedAt": "2017-11-14T18:41:28Z"
  13.  
  14. package com.example.murarilal.volley;
  15.  
  16. import android.content.Intent;
  17. import android.os.Bundle;
  18. import android.support.design.widget.FloatingActionButton;
  19. import android.support.design.widget.Snackbar;
  20. import android.support.v7.app.AppCompatActivity;
  21. import android.support.v7.widget.Toolbar;
  22. import android.view.View;
  23. import android.webkit.WebView;
  24. import android.webkit.WebViewClient;
  25.  
  26. public class ArticleActivity extends AppCompatActivity {
  27.  
  28.  
  29. @Override
  30. protected void onCreate(Bundle savedInstanceState) {
  31. super.onCreate(savedInstanceState);
  32. setContentView(R.layout.activity_article);
  33. String url="https://newsapi.org/v1/articles?source=techcrunch&apiKey=59b308aec9f242fe98b527ab9ba93199";
  34.  
  35.  
  36. WebView webView=(WebView)findViewById(R.id.webView);
  37. webView.getSettings().setJavaScriptEnabled(true);
  38. webView.setWebViewClient(new WebViewClient());
  39.  
  40. Intent intent=getIntent();
  41. webView.loadDataWithBaseURL(url,null,intent.getStringExtra("description"),"text/html","UTF-8");
  42. webView.loadUrl(url);
  43.  
  44.  
  45.  
  46. }
  47.  
  48. }
  49.  
  50. import android.content.Intent;
  51. import android.support.annotation.NonNull;
  52. import android.support.v7.app.AppCompatActivity;
  53. import android.os.Bundle;
  54. import android.util.Base64;
  55. import android.util.Log;
  56. import android.view.View;
  57. import android.widget.Adapter;
  58. import android.widget.AdapterView;
  59. import android.widget.ArrayAdapter;
  60. import android.widget.ListAdapter;
  61. import android.widget.ListView;
  62.  
  63. import com.android.volley.AuthFailureError;
  64. import com.android.volley.Request;
  65. import com.android.volley.RequestQueue;
  66. import com.android.volley.Response;
  67. import com.android.volley.VolleyError;
  68. import com.android.volley.toolbox.JsonObjectRequest;
  69. import com.android.volley.toolbox.StringRequest;
  70. import com.android.volley.toolbox.Volley;
  71.  
  72. import org.json.JSONArray;
  73. import org.json.JSONException;
  74. import org.json.JSONObject;
  75.  
  76. import java.util.ArrayList;
  77. import java.util.Collection;
  78. import java.util.HashMap;
  79. import java.util.Iterator;
  80. import java.util.List;
  81. import java.util.ListIterator;
  82. import java.util.Map;
  83.  
  84. public class MainActivity extends AppCompatActivity {
  85. RequestQueue queue;
  86. ListView listView;
  87. List<Hero> heroList;
  88.  
  89.  
  90.  
  91. private String url="https://newsapi.org/v1/articles?source=techcrunch&apiKey=59b308aec9f242fe98b527ab9ba93199";
  92.  
  93. @Override
  94. protected void onCreate(Bundle savedInstanceState) {
  95. super.onCreate(savedInstanceState);
  96. setContentView(R.layout.activity_main);
  97. queue= Volley.newRequestQueue(this);
  98. home();
  99.  
  100. listView = (ListView) findViewById(R.id.listView);
  101. heroList = new ArrayList<>();
  102.  
  103. listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  104. @Override
  105. public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
  106.  
  107. Intent intent=new Intent(getApplicationContext(),ArticleActivity.class);
  108. intent.putExtra("description",url);
  109. startActivity(intent);
  110.  
  111. }
  112. });
  113.  
  114.  
  115.  
  116. }
  117.  
  118. public void home()
  119. {
  120.  
  121. JsonObjectRequest request =new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
  122. @Override
  123. public void onResponse(JSONObject response) {
  124.  
  125. try {
  126. JSONObject obj = new JSONObject(String.valueOf(response));
  127.  
  128. JSONArray array = obj.getJSONArray("articles");
  129.  
  130. for (int i = 0; i < array.length(); i++) {
  131.  
  132. Hero hero=new Hero( (String) array.getJSONObject(i).get("title"),(String) array.getJSONObject(i).get("urlToImage"));
  133. heroList.add(hero);
  134.  
  135. }
  136.  
  137. ListViewAdapter adapter = new ListViewAdapter(heroList, getApplicationContext());
  138. listView.setAdapter(adapter);
  139. } catch (JSONException e) {
  140. e.printStackTrace();
  141. }
  142.  
  143.  
  144.  
  145. }
  146.  
  147. }
  148. , new Response.ErrorListener() {
  149. @Override
  150. public void onErrorResponse(VolleyError error) {
  151.  
  152. }
  153. });
  154.  
  155.  
  156.  
  157. queue.add(request);
  158. }
  159.  
  160.  
  161. }
  162.  
  163. listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  164. @Override
  165. public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
  166. Hero hero = heroList.get(i);
  167. Intent intent=new Intent(getApplicationContext(),ArticleActivity.class);
  168. //hero want to use any method from your hero object, example : getImageURL();
  169. intent.putExtra("description",hero.getImageURL());
  170. startActivity(intent);
  171.  
  172. }
  173. });
Add Comment
Please, Sign In to add comment