Modulo 2 Modelo Ejecucion

265 views

Published on

Analizaremos el modelo de ejecución de las aplicaciones en Windows Phone “Mango” y qué ha cambiado con respecto a la versión 7.0

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
265
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Modulo 2 Modelo Ejecucion

  1. 1. 11/07/2011 Modelo de ejecución  Mango introduce un nuevo estado: Dormant  Reanudación de aplicaciones rápida (sin Resuming…)  Se busca experiencia de usuario rápida y receptiva  Una sola aplicación en primer plano  Experiencia de navegación entre aplicaciones consistente  Novedad en Mango: Mantener pulsado back button para cambiar a la aplicación anterior Conceptos clave Ciclo de vida de una aplicación Estado de aplicación (Application State)  datos utilizados en varias páginas de una aplicación Estado de página (Page State)  estado visual de una página (checkbox activado, textbox con texto…) Eventos de aplicación (Event State) eventos para gestionar el estado de la aplicación (Launching, Deactivated, Activated, Closing) Eventos de página (Page Events) eventos que una aplicación puede sobreescribir para gestionar el estado de página Tombstoning  proceso de finalización de una aplicación, guardando previamente el estado de la aplicación y de las páginas Diccionarios de estado (States Dictionaries) almacenan pares clave/valor utilizados para restaurar el estado de la aplicación 1
  2. 2. 11/07/2011 Ciclo de vida de una aplicación Eventos y acciones del modelo de Rápida reanudación Reanudando .. . de App ejecución Evento o Método Acción de la AplicaciónRestaurar estado!Estado conservado! runningIsAppInstancePreservedIsAppInstancePreserved == Guardar Estado! Evento Launching Ejecutar muy poco código. No realizar operaciones intensivas en recursos como acceso al== falsetrue almacenamiento aislado. Método OnNavigatedFrom Si no es una navegación hacia atrás salvar el estado del interfaz en el diccionario de estado. Evento Deactivated Salvar el estado de la aplicación en caso de tombstoning. Además debe almacenarse un estado persistente en el almacenamiento aislado en caso de que la aplicación se haya terminado. No activated deactivated debe destruirse el estado de la aplicación en memoria en caso de que la aplicación pase a inactiva. Evento Activated Comprobar el valor de IsApplicacionInstancePreserved. Si es cierto, no realizar nada, si es falso utilizar los datos en el objeto State para restaurar el estado de la aplicación. Método OnNavigatedTo Comprobar si a página es una nueva instancia. Si no lo es, el estado es automáticamente intacto, en otro caso si hay datos en el objeto State, debe utilizarse para restaurar el interfaz. Tombstone dormant Desasociar recursos del teléfono Evento Closing Salvar datos de la aplicación persistentes en el almacenamiento aislado. App más Tombstoned Threads & timers suspendidos antigua Modelo de aplicación Desactivar gestión de recursos  OnNavigatedFrom/Deactivated MediaPlayer.Pause  Salvar estado de página/ aplicación MediaElement.Pause SoundEffectInstance.Pause VibrateController.Stop  OnNavigatedTo/Activated PhotoCamera.Dispose Guardar estado de página/global  Resaturar estado de página/aplicación si tombstoning XNA Audio Pausado  WP7: la mayoría de las veces Apps Tombstoned Sensors Notificationes suprimidas  Mango: Apps Tombstoned a veces Networking Cancelado Sockets Desconectado MediaElement Desconectado Camera Disposed 2
  3. 3. 11/07/2011 Activar gestión de recursos Check List para cambiar rápido de app MediaElement.Source/Position/Play En evento Deactivated: guardar estado (como en WP7) Socket.ConnectAsync new PhotoCamera/VideoCamera En evento Activated: restaurar estado si tombstoning y Restaurar estado de la aplicación si estaba asociar recursos cuando se necesiten en tombstoning Las aplicaciones no pueden ejecurar código tras lanzar Launchers/Choosers XNA Audio Reanudado Las aplicationes pueden continuar su ejecución con la Sensors Notifications resumed pantalla bloqueada Networking Completado con Cancelación Depurar la aplicación con tombstoning Sockets - MediaElement - Camera - Buenas prácticas I Buenas prácticas II Lanzamiento de aplicación consistente para el usuario: debe  La aplicación debe completar todos los eventos de ser evidente que se trata de una nueva instancia de la aplicación y métodos de navegación en 10 sg aplicación  Guardar datos progresivamente durante la ejecución Usar propiedad State en OnNavigatedFrom para guardar  Comprobar que no se destruye el estado en memoria estado de la aplicación cuando es desactivada Usar propiedad State en OnNavigatedTo para recuperar  Launchers y Choosers objetos globales estado  Notificaciones Push: siempre que se lanza la Guardar datos persistentes en los manejadores de Deactivated y Closing aplicación debe recrearse el canal de notificación No recuperar datos de almacenamiento aislado durante Launching o Activated  carga asíncrona 3
  4. 4. 11/07/2011 Recursos Centro de desarrollo de WP7 en MSDNhttp://msdn.microsoft.com/es-es/windowsphone/default.aspx AppHubhttp://create.msdn.com/ Windows Phone Developer Bloghttp://windowsteamblog.com/windows_phone/b/wpdev MobileNUGhttp://www.mobilenug.es Forumshttp://forums.create.msdn.com/forums/ 4

×