Comment Apple tue les technologies Web

image

La société a rendu extrêmement difficile l'utilisation des technologies Web sur ses plateformes, et elle espère que les développeurs perdureront.

Les langages de programmation pour la création de sites Web sont souvent utilisés pour écrire des applications. Cela est largement dû aux logiciels qui permettent aux développeurs de «réutiliser» le code qu'ils écrivent pour le Web dans les produits qu'ils créent pour les systèmes d'exploitation tels que Linux, Android, Windows et macOS.

Mais Apple a une raison de ne pas aimer la réutilisation de la technologie Web. Elle souhaite que l'App Store soit rempli d'applications exclusives, non disponibles sur toutes les plateformes. Avec un récent changement de politique , la société a rendu un peu plus difficile pour les développeurs de publier des applications Web.

Logiciel EDISON - développement web
Cet article a été préparé avec le soutien du logiciel EDISON, qui développe un système d'examen médical électronique et prend également en charge le logiciel .


Lentement, l'App Store a commencé à rejeter les applications créées à l'aide d'un outil populaire appelé Electron, qui permet aux développeurs de créer toutes leurs applications sur du code Web. Certaines des applications les plus populaires sur l'App Store, telles que Slack, Spotify, Discord et WhatsApp, entrent dans cette catégorie.

Dans une discussion sur Github , certains développeurs disent que pour leurs applications construites en utilisant Electron - qui ont été approuvées dans le passé - les échecs ont fourni une explication selon laquelle ces applications "tentent de cacher l'utilisation des API privées", qui sont des API créées pour des internes l'utilisation d'Apple, pas pour les développeurs tiers. L'utilisation d'API privées pour créer des applications publiques n'est généralement pas approuvée car elles peuvent changer ou se casser avec le temps, et Apple interdit les applications qui les utilisent.

Electron utilise des API privées depuis des années et l'a fait sans problème. Ces API privées permettent aux développeurs, par exemple, d' améliorer considérablement la consommation d'énergie , tandis que les outils autorisés d'Apple dégradent l'expérience utilisateur. Dans la plupart de ces cas, Apple ne propose pas de véritables alternatives aux développeurs qui souhaitent accéder à ces fonctions API privées.

Il est désormais peu probable que des milliers de développeurs qui ont créé leurs applications à l'aide d'Electron soient en mesure de publier des mises à jour pour eux, à moins qu'Electron ne modifie de manière significative son implémentation.

Les développeurs peuvent distribuer leurs applications à partir de leurs sites Web, invitant les utilisateurs à les télécharger directement. Mais cela signifie abandonner des fonctionnalités telles que le mécanisme de mise à jour automatique dans l'App Store et la synchronisation iCloud. Et cette méthode d'accès direct à l'acheteur pourrait bientôt être bloquée, car les exigences controversées de notarisation d' Apple pourraient nécessiter une révision.

Apple a un historique de progrès de la technologie Web retardée sur ses plateformes. Dans iOS, Apple n'autorise pas les navigateurs tiers totalement indépendants , obligeant toutes les applications à utiliser leur navigateur Safari lors du rendu du contenu Web. Bien que des navigateurs tels que Chrome et Opera soient disponibles sur l'App Store, ils doivent utiliser le moteur de navigateur Safari pour afficher les pages Web, pas les leurs. Cela signifie qu'Apple a le monopole de l'accès des utilisateurs d'iPhone et d'iPad au Web. Pour encourager les développeurs à créer des applications iOS natives, plutôt que d'utiliser des technologies Web, Apple ignore les parties populaires des spécifications Web ouvertes que les autres navigateurs implémentent en leur faveur.

Les pratiques anticoncurrentielles subtiles d'Apple ne semblent pas terriblement isolées, mais ensemble, elles forment une stratégie claire.

Par exemple, la technologie WebRTC vous permet de passer des appels vidéo dans un navigateur Web sans logiciel supplémentaire. Elle travaille dans des outils comme Google Meet. Mais Apple implémentait incroyablement lentement la spécification , sans tenir compte des fonctionnalités clés, et cette technologie ne fonctionnait pas lorsqu'elle était intégrée dans les applications .

Apple a également contrecarré la nouvelle norme appelée Progressive Web Apps (PWA), qui, comme Electron, permet aux développeurs de créer des applications pour les ordinateurs de bureau et les appareils mobiles - en l' introduisant de manière à ce qu'elle soit trop incohérente pour le permettre. compter sur. PWA n'a pas le même problème si les utilisateurs ouvrent des applications dans Chrome ou Firefox, mais les utilisateurs d'iPhone et d'iPad ne peuvent pas installer de navigateurs tiers, ce qui rend la technologie basée sur PWA vouée à l'échec.

Les développeurs utilisent des technologies telles qu'Electron et PWA car ils fournissent des mises à jour plus rapides sur différentes plates-formes sans nombreuses bases de code différentes. Certains soutiennent que cela conduit à des applications de mauvaise qualité, mais je dirais que l'alternative est le manque d'applications en général ou d'applications rarement mises à jour, car la maintenance de produits Windows, Mac et Web uniques est difficile et coûteuse. Apple a récemment publié un cadre concurrent appelé Catalyst , qui permet aux développeurs d'applications iPad de les lancer rapidement sur macOS, un excellent outil pour les développeurs axés uniquement sur les utilisateurs d'Apple, mais pas ceux qui créent des applications multiplateformes.

Les méthodes anticoncurrentielles voilées d'Apple ne sont pas aléatoires, mais elles forment une stratégie claire: rendre la création d'applications Web sur les plates-formes Apple si douloureuse que les développeurs n'y penseront pas. Maintenant que l'App Store n'accepte pas les applications construites avec Electron, les développeurs sont susceptibles de trouver des moyens créatifs de contourner cela, mais Apple est prêt à jouer en permanence aux jeux de chat et de souris, car il prévoit d'avoir plus de contrôle sur les applications qui peuvent s'exécuter sur la plate-forme. à l'avenir.

Ces types de modifications peuvent être effectués au nom de la confidentialité ou de la sécurité, mais la réalité est que l'argument semble faible lorsque les utilisateurs et les développeurs n'ont tout simplement pas le choix, car Apple contrôle la plate-forme, le moteur de navigateur et la méthode de distribution. Quel que soit votre avis sur la qualité des applications sur Electron, le choix est important.

Le contrôle d'Apple sur son écosystème d'applications est un nouveau type de monopole difficile à comprendre et à gérer pour les législateurs car il n'y a tout simplement aucun moyen de sortir de ces restrictions lorsque l'entreprise contrôle à la fois la méthode de distribution et la plate-forme elle-même.


Lisez aussi le blog
Société EDISON:


20 bibliothèques pour
application iOS spectaculaire

Source: https://habr.com/ru/post/fr476698/


All Articles