Я застрял с этим, поэтому любая помощь будет принята с благодарностью.
Я пытаюсь получить Json ответ от API, используя AsyncTask, но я всегда получаю нулевой результат.
publi c класс MainActivity расширяет AppCompatActivity {private String fetchURL = "http://api.themoviedb.org/3/movie/popular?api_key= ...";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new MyAsyncTask().execute(fetchURL);
}
public class MyAsyncTask extends AsyncTask<String,Void,String> {
String inputLine;
String result;
protected String doInBackground(String... params) {
String stringUrl = params[0];
try {
//Create a URL object holding our url
URL myUrl = new URL(stringUrl);
//Create a connection
HttpURLConnection urlConnection =(HttpURLConnection)
myUrl.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setReadTimeout(1000);
urlConnection.setConnectTimeout(1500);
urlConnection.connect();
//Create a new InputStreamReader
InputStreamReader streamReader = new
InputStreamReader(urlConnection.getInputStream());
//Create a new buffered reader and String Builder
BufferedReader reader = new BufferedReader(streamReader);
StringBuilder stringBuilder = new StringBuilder();
//Check if the line we are reading is not null
while((inputLine = reader.readLine()) != null){
stringBuilder.append(inputLine);
}
//Close our InputStream and Buffered reader
reader.close();
streamReader.close();
//Set our result equal to our stringBuilder
result = stringBuilder.toString();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
}
}