depuración de aplicaciones Winrt: por qué el evento de suspensión podría no disparar
El evento suspendiendo
es crítico para las aplicaciones de Windows Phone 8.1, habilitando la preservación de estado antes de la suspensión. Sin embargo, durante la depuración, este evento puede no activar, causando dificultades de prueba.
Considere este ejemplo:
///
/// Initializes the singleton application object.
///
public App()
{
...
Suspending = OnSuspending;
}
///
/// Suspend handling method.
///
private void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
deferral.Complete();
}
Breakpoints en onsuspending
permanece sin pedging durante la depuración. Esto se espera; El evento suspendiendo
está diseñado para escenarios de suspensión no debilitados.
depuración y suspensión: un aspecto más cercano
Windows Phone 8.1 evita que el evento suspendiendo
se dispare mientras se depugga para mantener la actividad de la aplicación para la inspección. Esto requiere métodos de prueba alternativos.
Para simular la suspensión, utilice la barra de herramientas de ubicación de depuración de Visual Studio. Seleccione "suspender" del menú desplegable de eventos del ciclo de vida para activar manualmente el evento. Después de los ajustes, seleccione "Reanudar" para reanudar la ejecución de la aplicación. Esto permite probar la lógica de manejo de suspensión sin implementar la aplicación.
Estrategias de prueba de suspensión efectivas
Las pruebas de manejo de suspensión exhaustiva requieren un entorno que no sea degugging. Implementar en un emulador o dispositivo físico simula la suspensión y la reanudación del mundo real, verificando el comportamiento de la aplicación en estas condiciones.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3