I'm trying to get a list of tv shows from themovidedb api and I keep getting the error below I am new to android and this is my first time using an api, please let me know if I have to provide more code. Thanks for your help.
Please note I am note trying to populate a recyclerview with this information just yet.
Error
com.android.volley.ParseError: org.json.JSONException: Value {"page":1,"total_results":20000,"total_pages":1000,"results":[{"original_name":"Doom Patrol"....
My code
@Override
protected Void doInBackground(Void... voids) {
popularTvShows = "https://api.themoviedb.org/3/tv/popular?api_key=****my api key goes here****";
popularList = new ArrayList<>();
RequestQueue requestQueue = Volley.newRequestQueue(Objects.requireNonNull(getActivity()));
JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(
Request.Method.GET,
popularTvShows,
null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
try {
for (int i = 0; i < response.length(); i++) {
JSONObject jsonObject = response.getJSONObject(i);
Series series = new Series();
series.setId(jsonObject.getInt("id"));
series.setVoteAverage(jsonObject.getInt("vote_average"));
series.setVoteCount(jsonObject.getInt("vote_count"));
series.setOriginalTitle(jsonObject.getString("original_title"));
series.setTitle(jsonObject.getString("title"));
series.setPopularity(jsonObject.getDouble("popularity"));
series.setOverview(jsonObject.getString("overview"));
series.setReleaseDate(jsonObject.getString("release_date"));
series.setPosterPath(jsonObject.getString("poster_path"));
popularList.add(series);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@SuppressLint("ShowToast")
@Override
public void onErrorResponse(VolleyError error) {
Log.e("gggg", error.toString());
if (error instanceof TimeoutError || error instanceof NoConnectionError) {
//This indicates that the reuest has either time out or there is no connection
Toast.makeText(getActivity(),"Check your internet and try again!", Toast.LENGTH_LONG);
} else if (error instanceof AuthFailureError) {
//Error indicating that there was an Authentication Failure while performing the request
Toast.makeText(getActivity(), "Authentication failure!", Toast.LENGTH_LONG);
} else if (error instanceof ServerError) {
//Indicates that the server responded with a error response
Toast.makeText(getActivity(), "Server error! Try again later", Toast.LENGTH_LONG);
} else if (error instanceof NetworkError) {
//Indicates that there was network error while performing the request
Toast.makeText(getActivity(), "Network error", Toast.LENGTH_LONG);
} else if (error instanceof ParseError) {
// Indicates that the server response could not be parsed
Toast.makeText(getActivity(), "Parse Error", Toast.LENGTH_LONG);
}
}
}
);
requestQueue.add(jsonArrayRequest);
return null;
}