Android AsyncTask no llamando a onPostExecute
Cuando llamo a mi AsyncTask, doInBackground se ejecuta pero onPostExecute nunca se llama después. Eclipse no se queja de @Override
s ni de ninguno de los parámetros de AsyncTask, por lo que no estoy seguro de cuál es el problema. Alguien puede decirme cuál es el problema?
Llamando AsyncTask:
- ProgressDialog o ProgressBar ralentiza la aplicación que ejecuta Android 4.1
- Comportamiento del contexto de Android AsyncTask
- Servicio v / s AsyncTask
- AsyncTask no se detendrá incluso cuando la actividad ha destruido
- DoInBackground tarda mucho en comenzar
new AsyncDataFetcher(this).execute(productInfoUrls);
productInfoUrls
es una lista de urls.
AsyncTask:
private static class AsyncDataFetcher extends AsyncTask<List<String>, Void, List<JSONObject>> { Context context; public AsyncDataFetcher(Context context) { this.context = context; } @Override protected List<JSONObject> doInBackground(List<String>... urls) { List<JSONObject> jsonList = new ArrayList<JSONObject>(); JSONParser json_parse = new JSONParser(); for (int i = 0; i < urls[0].size(); i ++) { jsonList.add(json_parse.getJSONFromUrl(urls[0].get(i))); } return jsonList; } @Override protected void onPostExecute(List<JSONObject> jsonList) { if(jsonList != null){ productInfoParser.Parse(jsonList); loaded = true; } } }
- Android: SSLException Error de E / S durante la llamada al sistema, conexión agotada
- Android - RxJava vs AsyncTask para evitar la pérdida de memoria de getActivity ()
- Clases de utilidades en Android, AsyncTask y loose-coupling por favor avise
- Android cómo implementar la ejecución de Async tarea de ejecutar
- Cómo publicar el progreso para el análisis de archivos json de gran tamaño con GSON
- Llamar a varias AsyncTask a la vez que no funcionan en Android
- Omitió 60 cuadros! La aplicación puede estar haciendo demasiado trabajo en su hilo principal
- Android: ¿Cómo puedo sincronizar datos del servidor a mi aplicación cada 3 y 5 minutos?
Todo parece apropiado en su estructura de tareas asíncronas, pero lo que está haciendo en doInBackground
podría tomar para siempre! Sospecho que su aplicación está iniciando el doInBackground
y nunca lo termina.
Me gustaría añadir algunos registros de depuración para ver cómo el json está progresando.
@Override protected List<JSONObject> doInBackground(List<String>... urls) { List<JSONObject> jsonList = new ArrayList<JSONObject>(); JSONParser json_parse = new JSONParser(); for (int i = 0; i < urls[0].size(); i ++) { jsonList.add(json_parse.getJSONFromUrl(urls[0].get(i))); Log.d(TAG, "added " + i); } Log.d(TAG, "returning jsonList"); return jsonList; }
- ¿Cómo evita que Chrome (o los navegadores de Internet de teléfono en general) en un dispositivo Android sustituyan símbolos de Unicode no estándar por Emojis?
- Cómo ocultar la barra de acción inferior en Android?