Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.rafab.apptempo;
- import android.os.AsyncTask;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.widget.ArrayAdapter;
- import android.widget.ListView;
- import org.json.JSONObject;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.util.ArrayList;
- public class MainActivity extends AppCompatActivity {
- public JSONObject data = null;
- public ListView listView;
- public ArrayList<String> temp =new ArrayList<>();
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- temp.add("Braga");
- temp.add("Porto");
- temp.add("Lisboa");
- getJSON(temp);
- listView = (ListView) findViewById(R.id.list);
- listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,new ArrayList<String>()));
- }
- public void getJSON(final ArrayList<String> temperaturas) {
- new AsyncTask<Void, String, String>() {
- private ArrayAdapter<String> adapter;
- String data1;
- @Override
- protected void onPreExecute() {
- //adapter=(ArrayAdapter<String>)listView.getAdapter();
- }
- @Override
- protected String doInBackground(Void... params) {
- for (String s : temperaturas){
- try {
- URL url = new URL("https://api.openweathermap.org/data/2.5/weather?q=" + s + "&appid=27960ba27a09e2165642c128f0b66bda");
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
- BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
- StringBuffer json = new StringBuffer(1024);
- String tmp = "";
- while ((tmp = reader.readLine()) != null)
- json.append(tmp).append("\n");
- reader.close();
- data = new JSONObject(json.toString());
- if (data.getInt("cod") != 200) {
- System.out.println("Cancelled");
- return null;
- }
- data1 = (String) data.toString();
- } catch (Exception e) {
- System.out.println("Exception " + e.getMessage());
- return null;
- }
- //publishProgress(data1);
- }
- return null;
- }
- @Override
- protected void onPostExecute(String dataJson) {
- if (data != null) {
- Log.d("my weather received", data.toString());
- }
- }
- }.execute();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement