Ce que cela signifie
La page des exigences à venir d'Apple indique que, depuis le 28 avril 2026, les applications envoyées sur App Store Connect doivent être compilées avec Xcode 26 ou plus et un SDK pour iOS 26, iPadOS 26, tvOS 26, visionOS 26 ou watchOS 26. Le build enregistre le SDK dans Info.plist (DTSDKName, DTPlatformVersion, DTXcode) et dans l'exécutable (LC_BUILD_VERSION) : App Store Connect les lit, et le contrôle aussi.
Échéance
En vigueur depuis le 28 avril 2026. Le minimum précédent était Xcode 16 avec le SDK iOS 18.
Corriger
1. Compiler avec Xcode 26
xcodebuild -version # doit afficher Xcode 26.x ou plus
xcodebuild -showsdks | grep iphoneos2. Mettre à jour les machines de CI
La plupart des refus ITMS-90725 viennent d'images de CI restées sur un Xcode plus ancien. Fixez explicitement la version de Xcode dans le workflow (par exemple avec sudo xcode-select -s /Applications/Xcode_26.app) au lieu de vous fier à la valeur par défaut de l'image.
3. Recompiler les frameworks si besoin
Les frameworks binaires tiers n'ont pas besoin du nouveau SDK, mais doivent fonctionner avec lui : si l'un d'eux ne se lie pas ou plante, mettez-le à jour.
Vérifier avant de soumettre
Déposez l'IPA sur la page de contrôle des stores. Elle exécute APPSTORE-SDK-VERSION avec les dates de cette page, puis supprime le fichier : rien de l'application n'est conservé. Le même moteur tourne hors ligne dans la CLI Narvy et renvoie le code 1 quand un point bloquant est trouvé, ce qui permet de bloquer un job de CI.
narvy store-check MyApp.ipa --lang frQuestions fréquentes
Dois-je abandonner les anciennes versions d'iOS ?
Non. La version du SDK et la cible de déploiement sont distinctes. La cible minimale acceptée par App Store Connect relève d'une autre règle (voir la page liée).
Pourquoi le contrôle indique-t-il "non déterminé" ?
Quand les SDK enregistrés dans l'Info.plist et dans l'exécutable divergent, ou manquent, le contrôle ne devine pas. Un build Xcode normal enregistre les deux.