8

Estoy desarrollando una aplicación Blackberry usando Cordova/PhoneGap. Estoy buscando varias imágenes (mosaicos de mapas) de un servidor. Además, cada 60 segundos le envío información de posición.Demasiados hilos en Blackberry usando Phonegap/WebWorks

Sin embargo, de vez en cuando, o bien cuando obtengo las imágenes o envío información, aparece un error. Si estoy en un simulador (BB 9930, OS 7.0.0.318), recibo un mensaje de AppError 104: Too many threads y mi aplicación se cuelga. Cuando pruebo mi aplicación en un dispositivo (BB 8520, OS 5.0.0.592) no solo falla la aplicación, sino que hace que se reinicie el BB.

He visto otras publicaciones con el mismo problema (como this one, this one o this one). Sin embargo, no encontré una solución al construir la aplicación usando Cordova/PhoneGap (JavaScript).

Gracias!

+0

Puede mostrar (preferiblemente codificar) cómo está administrando los hilos. – Brady

+0

El problema es que no puede administrar los hilos. El código con phonegap generalmente está en javascript/html. –

Respuesta

0

Esto puede no estar relacionado, pero tuve un problema similar al realizar una gran cantidad de solicitudes desde una aplicación nativa en un BB Bold. El hilo de conexión no se cerró correctamente después de recibir la respuesta.

pruebe lo siguiente:

  • cambio GET < -> POST.
  • cambiar HTTP < -> HTTPS.

si el servidor es suya, evaluar el cambio de la API para devolver todas las imágenes como una sola y utilizar un desplazamiento/recorte al mostrarlos. Ahorrará ancho de banda y abrirá menos conexiones. tu aplicación se cargará más rápido.

por ejemplo: http://www.ibloomstudios.com/articles/misunderstood_css_clip/

0

Dudo si el API PhoneGap está causando esto ya que es básicamente una capa. Posiblemente tienes un problema con el simulador?

0

Dado que también se está probando en 8520, se recomienda que se mantenga el número máximo de hilos - corriendo concurrently- en cualquier punto del tiempo en su aplicación - menos de 12

dado que está utilizando Phonegap, es posible que esté iniciando esos hilos para su aplicación.

Si el dispositivo está conectado a su sistema, conéctelo a Blackberry JDE y vea qué hilos están activos para analizar si puede reprogramar sus tareas.

¿Está utilizando AJAX para obtener los mosaicos del mapa y enviar la ubicación a su servidor?

Si está utilizando AJAX, puede mantener un contador en JavaScript para controlar las solicitudes.

Además, si ha probado WebWorkers, le permitirían hacer todas ellas en un solo hilo.

Si todo falla, también puede desarrollar su plugin Phonegap personalizado para hacer cosas similares con una API de la interfaz Java Script.