Я пытаюсь получить данные URL в формате JSON, который работает нормально, но иногда, когда я запускаю фрагмент без подключения к Интернету или даже с Интернетом, приложение останавливается.
Примечание:иногда код работает нормально,
Ниже мой код:
private void load_data_from_server(int id) {
AsyncTask<Integer,Void,Void> task = new AsyncTask<Integer, Void, Void>() {
@Override
protected Void doInBackground(Integer... integers) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://localhost:8000/getanimes.php?filter=#")
.build();
try {
Response response = client.newCall(request).execute();
JSONArray array = new JSONArray(response.body().string());
for (int i=0; i<array.length(); i++){
JSONObject object = array.getJSONObject(i);
Data data = new Data(object.getInt("id"),object.getString("title"),
object.getString("capa"));
data_list.add(data);
prog ="off";
}
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
System.out.println("End of content");
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
adapter.notifyDataSetChanged();
if(prog.equals("off")){
progress.setVisibility(View.GONE);
}
}
};
task.execute(id);
}
Я не знаю, что делать, чтобы решить проблему.Но я думаю, что это может быть на PostExecute