Mi aplicación con frecuencia lanza una excepción, como a continuación:Mi aplicación con frecuencia lanza excepción android.view.WindowLeaked -
E/WindowManager (6282): android.view.WindowLeaked: Actividad com.myActivity ha filtrado ventana [email protected] que se añadió originalmente aquí
La aplicación muestra un cuadro de diálogo de progreso cuando la principal actividad se inicia y comienza una tarea. Cuando la tarea finaliza, descarta el diálogo de progreso.
Mi código es como a continuación. ¿Alguien me puede ayudar?
public class MyActivity extends Activity {
private static int ID_DIALOG_PROGRESS = 2001;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_activity);
showDialog(ID_DIALOG_PROGRESS);
new MyTask().execute(null, null, null);
}
@Override
protected Dialog onCreateDialog(int id) {
if (id == ID_DIALOG_PROGRESS) {
ProgressDialog loadingDialog = new ProgressDialog(this);
loadingDialog.setTitle("");
loadingDialog.setMessage("");
loadingDialog.setIndeterminate(true);
loadingDialog.setCancelable(false);
return loadingDialog;
}
return super.onCreateDialog(id);
}
private class MyTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... arg0) {
/* Do something expensive here...*/
/* Start other activity*/
Intent intent = new Intent(MyActivity.this, OtherActivity.class);
startActivityForResult(intent, 1000);
}
return null;
}
protected void onPostExecute(Void arg0) {
dismissDialog(ID_DIALOG_PROGRESS);
}
}
}
La mayoría de las veces, la excepción se produjo desde la llamada a showDialog(). La otra vez, la excepción fue lanzada desde la llamada a dismissDialog().
¡Gracias de antemano!