Comment corriger 'keyWindow' déprécié dans iOS 13 et versions ultérieures (Swift)
Bonjour à tous ! Je suis un développeur iOS débutant, j'écris une application en Swift. J'ai récemment mis à jour Xcode vers la version 12, et mon projet ne compile plus. J'utilise l'ancienne méthode pour obtenir la fenêtre principale de l'application via `UIApplication.shared.keyWindow`, mais le compilateur émet un avertissement : `'keyWindow' was deprecated in iOS 13.0`. Voici mon code :
```swift
if let keyWindow = UIApplication.shared.keyWindow {
// J'essaie d'afficher un contrôleur par-dessus tout
let alert = UIAlertController(title: "Erreur", message: "Quelque chose s'est mal passé", preferredStyle: .alert)
keyWindow.rootViewController?.present(alert, animated: true)
}
```
Je comprends qu'Apple a changé quelque chose dans iOS 13 avec le multitâche et les scènes (UIScene), mais je n'arrive pas à comprendre comment obtenir correctement la fenêtre maintenant. J'ai essayé de lire la documentation, mais c'est trop compliqué pour un débutant. Dites-moi comment corriger ce code pour qu'il fonctionne sur iOS 13 et versions ultérieures, tout en ne cassant pas la prise en charge des anciennes versions (iOS 12 et inférieures) ? Merci d'avance.
No answers yet.
Connectez-vous pour laisser une réponse