2011-01-13 15 views
10

Estoy usando jQueryMobile y phoneGap para una aplicación móvil en varios dispositivos. Uso el almacenamiento local html 5 para conservar los registros que trabajaron en el usuario.¿Qué evento atrapar para cerrar la aplicación?

No sé qué evento PhoneGap atrapar justo antes del cierre de la aplicación, así puedo asegurarme de que los datos se guarden antes de que se complete el apagado.

Basándome en la sugerencia de naughtur, probé los eventos de descarga y de descarga previa, ninguno de ellos fue despedido durante el cierre de la aplicación. Lo que sigue es mi código SNIP:

function persistTasks(){ 
    alert ("is unloading the app"); 
    offlineTasklist.set("tasks", tasklist); 
} 

function init() { 
    document.addEventListener("unload", persistTasks, false); 
    login(); 
} 

$(document).ready(init); 
+0

que es interesante. intente descargar y antes de descargar eventos y publique si funcionan o no. Si no, tendremos que excavar en el teléfono apis – naugtur

+0

Gracias naugtur! Había aceptado algunas de las respuestas, pero el porcentaje no parece reflejarlas. ¡¡Pero gracias de cualquier manera!! – xueru

+0

Intentó descargar y antes de descargar, ninguno de los dos se disparó durante el cierre de la aplicación. – xueru

Respuesta

7

No estoy seguro al 100% usando descargar eventos, debido a lo que esté técnicamente podría (no estoy seguro si esto sucede en PhoneGap) también ser despedido cuando se carga una página web diferente, es decir, ir index.html a about.html dentro de su aplicación PhoneGap.

Al menos para Android, tiene acceso a resume y pause eventos. Por lo que puede hacer:

document.addEventListener('pause', function() { alert('this alert will show up in the background while your app is paused.'); }, false); 
document.addEventListener('resume', function() { alert('this alert will show up when you open the app back up.'); }, false); 
Cuestiones relacionadas