Ouvrir le menu principal

MacGeneration

Recherche

Des applications qui intègrent Python rejetées sur l'App Store à cause d'une vérification trop stricte et trop opaque

Pierre Dandumont

lundi 22 juillet 2024 à 16:45 • 12

Logiciels

Ces dernières semaines, des développeurs ont eu un problème bizarre : des applications ont été rejetées par la validation de l'App Store (iOS ou macOS). La raison peut sembler un peu étonnante : une modification dans le code source de Python a ajouté une fonction qui semble problématique pour la validation d'Apple.

Le logo de Python

Le problème de cette version 3.12, qui peut être intégrée directement dans les applications, est qu'elle contient une fonction pour gérer les URL de type itms-services://. Pour résumer, ce type d'adresse permet d'installer une application depuis l'App Store et Apple interdit explicitement ce type d'action dans une application distribuée sur un de ses App Store.

Le problème, dans le cas présent, est double. Premièrement, intégrer une bibliothèque qui va prendre en charge les adresses de ce type n'implique pas que l'application va le faire. Deuxièmement, et c'est ce qui est reproché à Apple, la validation automatique — en cause ici — est trop stricte. Russell Keith-Magee, un des développeurs de CPython (une implémentation courante du langage) explique bien le souci : la validation d'Apple n'est pas documentée, tout en étant extrêmement stricte.

La solution choisie n'est par ailleurs qu'un pis-aller : un paramètre à ajouter au moment de la configuration (--with-app-store-patch) pour supprimer la fonction incriminée. Elle est activée par défaut sous iOS et est optionnelle avec les autres systèmes, mais est recommandée sous macOS si vous comptez distribuer une application sur le Mac App Store.

Ce bug (qui n'en est pas vraiment un) montre encore une fois que si la sécurité d'Apple est globalement bonne — ce qui n'empêche pas par ailleurs la distribution d'applications malicieuses dans les faits —, elle est surtout opaque et peu compatible avec l'open source dans la pratique, dans le sens où les développeurs n'ont pas nécessairement le temps ou l'envie d'essayer de comprendre les limitations arbitraires d'Apple. Et comme Joe Brockmeier l'indique, ce n'est probablement pas la dernière fois que le problème se pose.

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

Nvidia et Intel annoncent un partenariat à 5 milliards pour concurrencer AMD

06:30

• 2


La Chine interdit à ses géants de la tech les puces Nvidia, et Huawei annonce prendre la relève

18/09/2025 à 21:45

• 33


Vendez votre ancien iPhone, vite fait bien fait

18/09/2025 à 19:16

• 0


Ubiquiti présente toute une gamme de NAS, dont un petit UNAS 2 qui rappelle fort la Time Capsule

18/09/2025 à 17:11

• 33


iOS 26 : notre guide des nouveautés est en vente !

18/09/2025 à 17:10

• 83


Tim Cook, invité privilégié à la visite d'État de Trump au Royaume-Uni

18/09/2025 à 16:32

• 24


Le dock USB4 de Razer et ses 14 prises en promo à 213 € au lieu de 250 €

18/09/2025 à 15:15

• 0


macOS Tahoe : pas de presse-papiers dans Spotlight ? N’oubliez pas de l’activer

18/09/2025 à 15:00

• 8


Promo : 15 % sur le Mac mini M4 bien équipé en 24/512 Go

18/09/2025 à 14:17

• 5


iPhone 17 : quel adaptateur secteur pour la recharge filaire plus rapide ?

18/09/2025 à 13:40

• 51


Encore du stock pour les iPhone 17 (Pro), l’Apple Watch Ultra 3 et les AirPods Pro 3

18/09/2025 à 12:48

• 112


Lorsque Photos corrompt des fichiers importés depuis une carte SD

18/09/2025 à 11:27

• 54


OLED, tactile, 5G : le futur MacBook Pro M6 s’annonce spectaculaire

18/09/2025 à 10:14

• 54


Le MacBook A18 Pro entrerait en production à la fin de l’année, pour un prix d’entrée de 599 dollars

17/09/2025 à 21:30

• 52


macOS 26 ne veut pas s’installer sur les Mac Studio M3 Ultra

17/09/2025 à 20:00

• 66