Blog 
>Lista ejercicios > 
Ejercicio 16
Continuando con el tema de multihilo, vamos a ver un ejemplo de cómo preparar una aplicación para que pase a un estado de suspensión :
Ejercicio 16: Multitasking, preparar dispositivo estado suspensión
Creamos un proyecto de la forma habitual, create a new Xcode proyect - Single View Application y una vez creado vamos a indicarle que la aplicación puede llevar ciertas tareas en segundo plano, en Supporting Files - archivo-info.plist
Y en Bundle OS Type code, pulsamos sobre el +, y ahi Required background modes :
Ahí vamos añadiendo elementos en función de las tareas que queramos poner en segundo plano, por ejemplo, escuchar musica y recibir datos via IP :
Una vez configurado esto, vamos a ver si el dispositivo acepta operaciones en background, añadimos un label al storyboard con su correspondiente conexión, y poco más, después añadimos en el archivo .m el código necesario para saber si el dispositivo acepta que las aplicaciones esten en modo "background" (segundo plano) :
.H
.M
Continuando con el tema de multihilo, vamos a ver un ejemplo de cómo preparar una aplicación para que pase a un estado de suspensión :
Ejercicio 16: Multitasking, preparar dispositivo estado suspensión
Creamos un proyecto de la forma habitual, create a new Xcode proyect - Single View Application y una vez creado vamos a indicarle que la aplicación puede llevar ciertas tareas en segundo plano, en Supporting Files - archivo-info.plist
Y en Bundle OS Type code, pulsamos sobre el +, y ahi Required background modes :
Ahí vamos añadiendo elementos en función de las tareas que queramos poner en segundo plano, por ejemplo, escuchar musica y recibir datos via IP :
Una vez configurado esto, vamos a ver si el dispositivo acepta operaciones en background, añadimos un label al storyboard con su correspondiente conexión, y poco más, después añadimos en el archivo .m el código necesario para saber si el dispositivo acepta que las aplicaciones esten en modo "background" (segundo plano) :
.H
@interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *milabel; @end
.M
@implementation ViewController
- (void)viewDidLoad
{
    [super viewDidLoad];
 UIDevice *dispositivo;
    BOOL segundoPlano=NO;
    ///PREGUNTAMOS SI EL DISPOSITIVO SOPORTA SERVICIOS EN SEGUNDO PLANO
    if([dispositivo respondsToSelector:@selector(isMultitaskingSupported)]){
        segundoPlano=dispositivo.multitaskingSupported;
    }
    //PREGUNTAMOS VALOR DE LA VARIABLE Y MOSTRAMOS VALOR EN EL LABEL
    if(segundoPlano){
    
        self.milabel.text=@"Terminal con background";
    }else{
        self.milabel.text=@"Terminal sin background";
    }
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
@end
Este dispositivo da como terminal sin background, porque lo estoy probando en un emulador y no le permite el modo.
 
 
 
 
 | 
  
  Indice 
   | 
   
 
 Ejercicio anterior  | 
    
  
 Siguiente ejercicio  | 





