Eventos de clics no registrados

Esta es la pantalla principal de la aplicación para Android. Todo se procesa dentro de un WebView.

Cuando golpeo el botón en la esquina inferior izquierda, se abre esta superposición, con su contenido añadido dinámicamente a ella.

Cuando golpeo uno de los iconos, se debe añadir a la barra de la izquierda. Y así es.

Cuando golpeo otro icono, sin embargo, nada sucede en absoluto. La función que debe llamar no se ejecuta (he comprobado poniendo una alert () al principio de ella).

Cuando cierro la superposición (botón en la esquina superior izquierda), y lo abra de nuevo (abajo a la izquierda), puedo agregar otro icono. Pero una vez más, el siguiente evento no se activará hasta que la superposición se cierre y se abra una vez más.

No sé lo fácil que esto va a ser arreglar, ya que no estoy seguro de si todo el mundo experimenta este problema. I (en mi Samsung GT-P6200 con Android 4.0.4) hacer. Alguien se quejó de mí también. En el emulador de Android incluido en el SDK, sin embargo, no parece que esto ocurra con Android 4.1 y 4.1. Parece ser un problema 4.0.

Un icono en la superposición se parece a esto; <div class="appLauncher" onClick="launchApp (' + i + ')"><img src="data:image/png;base64,' + base64 + '" alt="[~]" /><br /><span>' + label + '</span></div>

Yo uso jQuery para jugar con el DOM, si hace alguna diferencia.

 function launchApp (i) { // Putting an alert () here indicates that the function doesn't get called, because no alert box appears on the screen // try { if (! launcherEdit) { android.launchAppFromList (i); } else { addAppToLauncherFromList (i); // This is what should happen // } } catch (ex) { handleException (ex); } } 

La aplicación en sí se puede encontrar aquí; Https://play.google.com/store/apps/details?id=be.robinj.ubuntu
Su código fuente se puede encontrar aquí; Http://bazaar.launchpad.net/~robinj/be.robinj.ubuntu/trunk/files
Y este es el archivo Javascript; Http://bazaar.launchpad.net/~robinj/be.robinj.ubuntu/trunk/view/head:/assets/script.js


Y por favor, por favor, no cierre esto como un "duplicado exacto" sin comprender adecuadamente cuál es el problema real, como ha ocurrido muchas veces antes.


Este lío sangriento sólo parece presente en Android 4.0.4 y menor (o en algún lugar alrededor de ese número de versión). Sólo se hacen clic en los appLaunchers que se completan ignorados.


Estoy empezando a ver algún tipo de conexión aquí … Siempre comienza a fallar después de la animación jQuery añadiendo el elemento a la barra de la izquierda ha jugado. Esto está empezando a parecer sospechosamente como un problema de redibujo …


No estoy seguro de si esto está relacionado, pero vi que apareció en mi consola …

 02-12 14:30:22.650: E/dalvikvm(3936): JNI ERROR (app bug): attempt to use stale global reference 0xe 02-12 14:30:22.650: E/dalvikvm(3936): VM aborting 02-12 14:30:22.650: A/libc(3936): Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1) 

Si está usando jQuery que usar mejor el evento " bind " para vincular su evento de clic.

Por ejemplo:

  <div class="appLauncher" data-id= ' + i + '"> <img src="data:image/png;base64,' + base64 + '" alt="[~]" /><br /><span>' + label + '</span></div> 

Y que en el archivo javascript que utiliza:

 $(".appLauncher").bind("click",function(){ var i=$(this)attr("data-id"); launchApp(i); }); 

Trate de hacerme saber que te ayuda o no 🙂

No mucho de una persona de javascript, pero sé que Android hace una distinción clara entre "uno apagado" desencadena y desencadenantes reutilizables (PendingIntents). ¿Es posible que estés de alguna manera instanciando uno de los comportamientos de .appLaunch?

Supongo que usted es golpeado por el número 19827

En este caso, intente agregar una llamada a preventDefault (no probada)

 $(".appLauncher").bind("click", function(e) { e.preventDefault(); var i = $(this)attr("data-id"); launchApp(i); }); 

Miré http://bazaar.launchpad.net/~robinj/be.robinj.ubuntu/trunk/view/head:/assets/script.js

Ha establecido "var scrollable = Array ()" en su archivo de script. ¿No debería ser nuevo Array () o simplemente llano []

Simplemente intenta si esto está relacionado con tu JNI ERROR (bug de la aplicación): intenta usar referencia global obsoleta 0xe

  • El navegador nativo de Android no actualiza la altura en el desbordamiento automático al agregar elementos
  • ¿Cuánto HTML5 android navegador soporta?
  • ¿Cuáles son las diferencias entre touchmove y gesturechange?
  • ¿Hay una manera de hacer un número de teléfono clicable en un teléfono de iphone o android para hacer una llamada en HTML?
  • Cambiar el webkit predeterminado en Apache Cordova - Android
  • Añadir encabezados personalizados a las solicitudes de recursos de WebView - android
  • Detectar si actualmente se desplaza una página web en Android
  • ¿Por qué es el evento touchstart después de hacer clic?
  • Embedded Chromium o Webkit en la aplicación para Android
  • Android WebKit enfocado textarea no dibujar imagen de fondo
  • Interceptar llamada de red desde Android Java / JNI
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.