Bonnes feuilles : Développer pour l'Iphone et l'Ipad Quelles sont les caractéristiques de l'appareil ?

L'application peut obtenir des informations sur l'appareil via une instance globale de la classe UIDevice. Cette instance est obtenue par la méthode de classe currentDevice.

Les propriétés de la classe UIDevice donne accès à toutes les informations nécessaires :

 userInterfaceIdiom. Cette propriété prend la valeur UIUserInterfaceIdiomPhone ou UIUserInterfaceIdiomPad selon que l'interface utilisateur de l'appareil est celle de l'iPhone ou bien celle de l'iPad. Comme cette propriété est introduite avec la version 3.2, le système définit la macro UI_USER_INTERFACE_IDIOM(). Cette macro teste l'existence de cette propriété et retourne toujours un résultat correct, quel que soit le système :

 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// Interface utilisateur de l'iPad
}

 uniqueIdentifier : identificateur unique désignant le périphérique.

 name : nom donné au périphérique.

 systemName : nom du système.

 systemVersion : version du système.

 model : nom du modèle de périphérique.

 localizedModel : version localisée de la propriété model.

 orientation : orientation actuelle du périphérique. Cette valeur est une
constante du type UIDeviceOrientation.

 generatesDeviceOrientationNotifications. Lorsque la valeur de cette propriété est YES, le système crée les notifications lors d'un changement d'orientation du périphérique.

 batteryLevel, batteryMonitoringEnabled et batteryState : gestion de la batterie. (Voir paragraphe suivant).

 proximityMonitoringEnabled et proximityState : gestion du capteur de proximité s'il est disponible sur l'appareil. Si ce n'est pas le cas, la propriété proximityMonitoringEnabled reste à NO quels que soient les efforts de l'application.

La classe UIScreenMode définit la résolution d'un écran avec les propriétés size et pixelAspectRatio. La classe UIScreen représente un écran disponible pour l'application :

 la méthode de classe mainScreen retourne une instance représentant l'écran principal ;
 la méthode screens retourne une liste contenant une instance pour chaque écran disponible.


Chaque instance de UIScreen indique les dimensions de l'écran avec la propriété bounds et le rectangle d'affichage pour une application avec la propriété applicationFrame. La propriété availableModes donne la liste des résolutions possibles pour l'écran et la propriété currentMode indique la résolution courante.

Les notifications UIScreenDidConnectNotification, UIScreenDidDisconnectNotification et UIScreenModeDidChangeNotification permettent de suivre les changements de configuration des écrans.