Tengo varias aplicaciones de iOS que usan el mismo puerto para escuchar una señal de red. En la vista principal, uso viewWillDisappear para cerrar el puerto cuando se abre otra vista, que funcionaba muy bien. Luego noté que si presionaba el botón de inicio desde el controlador de vista principal sin abrir otra vista para cerrar el puerto, entonces el puerto permanece abierto y ninguna de mis otras aplicaciones puede seguir escuchando en ese puerto. Luego intenté usar viewWillUnload, pero parece que no se llama cuando presiono el botón de inicio.Detectar cuando se presiona el botón de inicio iOS
-(void)viewWillUnload
{
//[super viewWillUnload];
NSLog(@"View will unload");
[udpSocket close];
udpSocket = nil;
}
Ver descargará nunca se muestra en la consola, lo que me lleva a creer que el método no está recibiendo llamadas.
¿Hay alguna forma de detectar cuándo se presiona el botón de inicio para poder cerrar el puerto?
intenta utilizar el método "applicationWillTerminate" .:-) –
El método "applicationWillTerminate" no existe. Sin embargo, las subclases pueden registrarse para UIApplicationWillTerminateNotification y luego hacer su propia limpieza o cierre. –