Android Simple Http Get Request
06-05-2019HttpGetRequestTask
import android.os.AsyncTask; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class HttpGetRequestTask extends AsyncTask<String, Integer, String> { private RequestResponseHandler requestResponseHandler; public HttpGetRequestTask(RequestResponseHandler requestResponseHandler) { this.requestResponseHandler=requestResponseHandler; } protected String doInBackground(String... urls) { try { URL url = new URL(urls[0]); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setConnectTimeout(5000); connection.setReadTimeout(5000); connection.connect(); BufferedReader rd = new BufferedReader( new InputStreamReader(connection.getInputStream())); StringBuilder content = new StringBuilder(); String line; while ((line = rd.readLine()) != null) { content.append(line).append("\n"); } rd.close(); connection.disconnect(); return content.toString(); } catch (IOException e) { return ""; } } protected void onProgressUpdate(Integer... progress) { } protected void onPostExecute(String result) { // this is executed on the main thread after the process is over // update your UI here this.requestResponseHandler.response(result); } }
RequestResponseHandler
public interface RequestResponseHandler { void response(String result); }
Calling HttpGetRequestTask
new HttpGetRequestTask(new RequestResponseHandler() { @Override public void response(String result) { try { JSONArray reader = new JSONArray(result); for (int i = 0; i < reader.length(); i++) { JSONObject jsonObject = reader.getJSONObject(i); int id = jsonObject.getInt("id"); String name = jsonObject.getString("name"); String packageName = jsonObject.getString("package"); MenuItem menuItem = myAppsMenu.add(100, id, i, name); View actionView = new View(getApplicationContext()); actionView.setTag(packageName); menuItem.setActionView(actionView); } } catch (JSONException e) { e.printStackTrace(); } } }).execute("http://boyuzatma.evhediyesial.com/api/v1/advertisements/" + getPackageName());