studio from fragments con comunicar change activity android andengine

android - from - ¡Por qué estoy obteniendo el error ''El canal se rompió irrecuperablemente y se eliminará!''



fragment interaction listener (12)

Cuando intento iniciar mi Actividad de AndEngine , aparece este error:

ERROR/InputDispatcher(21374): channel ''4122e148 my.package.AcGame (server)'' ~ Channel is unrecoverably broken and will be disposed!

La aplicación no falla, pero hay una pantalla negra y el dispositivo no reacciona al presionar los botones "volver" o "inicio".

Alguien sabe cual es el problema?


Al leer todas las contribuciones, parece que muchos orígenes diferentes muestran que causan los mismos síntomas de problema.

En mi caso, por ejemplo, tengo este problema tan pronto como agregué

android:progressBackgroundTintMode="src_over"

a mis propiedades de la barra de progreso. Creo que el diseñador de interfaz gráfica de usuario de ADT es conocido por varios errores. Por lo tanto, supongo que este es uno de ellos. Entonces, si encuentra síntomas de problemas similares (que simplemente no tienen sentido) después de jugar con la configuración de su GUI, simplemente intente deshacer lo que hizo y deshacer sus últimas modificaciones de la GUI.

Simplemente presione Ctrl + z con el archivo recientemente modificado en la pantalla.

O:

La herramienta de control de versiones podría ser útil. Abra el panel de control de versiones - elija la pestaña Cambios locales y vea los archivos recientemente modificados (quizás .xml).

Haga clic con el botón derecho sobre el más sospechoso y haga clic en Mostrar Dif. Entonces solo adivine qué línea modificada podría ser responsable.

Buena suerte :)


Creo que tienes pérdidas de memoria en alguna parte. Puede encontrar consejos para evitar la filtración de memoria here . También puedes aprender sobre las herramientas para rastrearlo here .


En mi caso, estos dos problemas ocurren en algunos casos, como cuando trato de mostrar el diálogo de progreso en una actividad que no está en primer plano. Entonces, descarto el diálogo de progreso en una pausa del ciclo de vida de la actividad. Y el problema está resuelto

¡No se puede iniciar este animador en una vista separada! revelan efecto ERROR

RESPUESTA: ¡ No se puede iniciar este animador en una vista separada! revelan el efecto

¡Por qué estoy obteniendo un error ''El canal se rompió irrecuperablemente y se eliminará!

RESPUESTA: ¡ Por qué estoy obteniendo el error ''El canal se rompió irrecuperablemente y se eliminará!''

@Override protected void onPause() { super.onPause(); dismissProgressDialog(); } private void dismissProgressDialog() { if(progressDialog != null && progressDialog.isShowing()) progressDialog.dismiss(); }


Me pasó a mí también mientras ejecutaba un juego usando el motor. Se corrigió después de que agregué el código siguiente a mi manifest.xml. Este código debe agregarse a su actividad principal.

android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|mcc|mnc"


Puede ver el código fuente sobre este resultado here :

void InputDispatcher::onDispatchCycleBrokenLocked( nsecs_t currentTime, const sp<Connection>& connection) { ALOGE("channel ''%s'' ~ Channel is unrecoverably broken and will be disposed!", connection->getInputChannelName()); CommandEntry* commandEntry = postCommandLocked( & InputDispatcher::doNotifyInputChannelBrokenLockedInterruptible); commandEntry->connection = connection; }

Es causa por ciclo roto bloqueado ...


Tuve el mismo problema, pero el mío fue debido a una fuga de memoria en la base de datos de Android. Salté un cursor. Entonces el dispositivo falla para arreglar esa fuga de memoria. Si está trabajando con la base de datos de Android, compruebe si omitió un cursor mientras lo recuperaba de la base de datos.


Una de las razones más comunes por las que veo ese error es cuando trato de mostrar un cuadro de diálogo de alerta o diálogo de progreso en una actividad que no está en primer plano. Como cuando un hilo de fondo que muestra un cuadro de diálogo se está ejecutando en una actividad en pausa.


Yo estaba teniendo el mismo problema también. En mi caso se produjo cuando intentaba reproducir videos con una codificación pobre (demandaba demasiada memoria). This me ayudó a detectar el error y solicitar otra versión del mismo video. This


Yo tuve el mismo problema. El mío se debió a un tercer jar, pero el logcat no captó la excepción, lo solucioné al actualizar el tercer jar, espero que esto ayude.


Yo tuve el mismo problema. Para resolver el error: Ciérrelo en el emulador y luego ejecútelo con Android Studio.

El error ocurre cuando intenta volver a ejecutar la aplicación cuando la aplicación ya se está ejecutando en el emulador.

Básicamente, el error dice: "Ya no tengo el canal existente y descarta la conexión ya establecida", ya que ha ejecutado la aplicación desde Android Studio nuevamente.


strings.xml un error similar (mi aplicación falla) después de renombrar algo en strings.xml y olvidé de modificar otros archivos (un archivo de recursos xml de preferencias y un código de Java).

IDE (android studio) no mostró ningún error. Pero, después de reparar mis archivos xml y código Java, la aplicación funcionó bien. Entonces, tal vez haya algunos pequeños errores en sus archivos xml o constantes.


¿Alguna vez usó UI nuevo hilo? No use doblemente el nuevo hilo de UI, parezca un sándwich. Debería causar pérdidas de memoria.

Me encontré con los mismos problemas hace 2 días, lo resuelvo ahora. Soy taiwanés, me complace responder aquí una vez más.

En una frase corta, un hilo principal podría tener muchos subprocesos UI para hacer mucho trabajo, pero si un subproceso (no hilo principal) posee un subproceso UI dentro, tal vez sub trabajo de subproceso hecho, pero su kid ~ subproceso UI no ha terminado el trabajo , esto causará fugas de memoria.

Por ejemplo ... para la aplicación Fragment & UI ... esto causará pérdidas de memoria.

getActivity().runOnUiThread(new Runnable(){ public void run() {//No.1 ShowDataScreen(); getActivity().runOnUiThread(new Runnable(){ public void run() {//No.2 Toast.makeText(getActivity(), "This is error way",Toast.LENGTH_SHORT).show(); }});// end of No.2 UI new thread }});// end of No.1 UI new thread

Mi solución se reorganiza de la siguiente manera:

getActivity().runOnUiThread(new Runnable(){ public void run() {//No.1 ShowDataScreen(); }});// end of No.1 UI new thread getActivity().runOnUiThread(new Runnable(){ public void run() {//No.2 Toast.makeText(getActivity(), "This is correct way",Toast.LENGTH_SHORT).show(); }});// end of No.2 UI new thread

para tu referencia.