Lorsque vous essayez de vous inscrire aux notifications push sous iOS 8.x :
application.registerForRemoteNotificationTypes(UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound)
Je reçois l'erreur suivante :
registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later.
Avez-vous une idée de la nouvelle façon de procéder ? Cela fonctionne lorsque j'exécute cette application Swift sur iOS 7.x.
EDIT
Sous iOS 7.x, lorsque j'inclus le code conditionnel, j'obtiens (soit SystemVersion conditionnelle, soit #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000)
dyld: Symbol not found: _OBJC_CLASS_$_UIUserNotificationSettings
1 votes
Regardez la documentation de UIApplication, je pense que vous êtes censé utiliser registerUserNotificationSettings et registerForRemoteNotifications.
3 votes
Merci, je vais vérifier ça lundi.
0 votes
@Skyte : Cette méthode n'est disponible que dans iOS 8+.
0 votes
Quelqu'un sait pourquoi cela fonctionne toujours avec une application qui est déjà dans l'app store, mais pas si j'essaie de la tester localement ?
1 votes
Cela dépend-il de la version de xCode avec laquelle le binaire a été construit ? Désolé pour les deux commentaires à la suite, je suis arrivé trop tard pour modifier mon commentaire précédent.
0 votes
Les applications qui sont déjà dans la boutique sont construites avec les bibliothèques existantes ; les applications exécutées localement sont généralement liées aux dernières bibliothèques. La version 2013 d'une application est liée aux bibliothèques iOS7 ; une telle application fonctionnera toujours sur un téléphone iOS8 puisque ce dernier est rétrocompatible. Actuellement, si vous exécutez votre application dans xcode 5, vous la liez aux bibliothèques iOS7, mais lorsque vous passez à xcode 6, vous la liez aux bibliothèques iOS8. Note - après le 1er juin, toutes les mises à jour d'applications nécessitent xcode 6 et les bibliothèques iOS 8.