Accéder au contenu principal

UIApplication::OpenURL deprecated

La fonction UIApplication::OpenURL est deprecated car Apple désire pouvoir ajouter des options et surtout un handler qui permet de vérifier que l'opération s'est bien déroulée.

Comme mes applications sont compilées pour IOS9 (iPad2) cette nouvelle fonction ne peut pas être utilisé car elle est apparue avec IOS 10. Il faut donc mettre un test sur la version d'IOS, mais cela ne suffit pas car il reste le warning deprecated qui devrait disparaitre mais qui ne disparait pas ce qui est pour le moins agaçant et il faut ajouter des #pragma pour enlever le warning.

  NSURL *url = [NSURL URLWithString:"http://monsite.fr"];

  if (@available(iOS 10.0, *)) {

    [[UIApplication sharedApplicationopenURL:url

                                       options:@{}

                             completionHandler:nil];

  } else {

#pragma GCC diagnostic push

#pragma GCC diagnostic ignored "-Wdeprecated-declarations"

     [[UIApplication sharedApplicationopenURL:url];

#pragma GCC diagnostic pop

  }



Commentaires