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());