Compatibilité entre les différentes versions d’IOS dans une application

mardi 18 mars 2014

Il est parfois nécessaire de maintenir son application avec différentes versions d’IOS et de quand même avoir besoin d’utiliser des fonctionnalités d’une version d’IOS si elles sont présentes!

Pour se faire, Xcode nous offre une fonction très utiles:

if ([myVar respondsToSelector:@selector(myMethod)] {
    [myVar myMethod];
}

Dans ce cas-ci, respondsToSelector permet de vérifier si myMethod est défini dans myVar. Ce qui peut être utile pour vérifier si des méthodes IOS7 peuvent être appelées ou non.

Sinon il y a toujours le test so on est en version IOS 7.0 ou non:

 if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
    // Load resources for iOS 6.1 or earlier
 } else {
    // Load resources for iOS 7 or later
 }

Tags: IOS , IOS7 , respondsToSelector