MechDome est un nouvel outil de développement qui convertit automatiquement les applications Android en iOS et conserve tous les éléments de l'interface utilisateur et la plupart des fonctionnalités natives.
Le développement multiplateforme constitue depuis de nombreuses années un défi majeur pour la plupart des développeurs indépendants. Bien souvent, l'apprentissage d'un nouveau langage de programmation afin de porter votre application sur une autre plate-forme demande tout simplement trop de temps et de ressources.
Pendant des années, cette répartition des ressources a poussé de nombreux développeurs à concentrer principalement leurs efforts sur iOS, en raison de la plus grande marché lucratif. Grâce à des projets tels que XamarinCependant, les développeurs familiarisés avec C# ont pu développer leurs projets sur iOS, Android et Windows Mobile. Mais les développeurs Android sont plus familiers avec l’écriture en Java, donc l’utilisation de Xamarin nécessiterait qu’un développeur se familiarise avec un nouveau langage et construise une nouvelle plate-forme. Nous avons couvert un projet visant à combler le fossé entre les systèmes d'exploitation mobiles en fournissant une plate-forme de développement croisé pour les développeurs Java:
Le moteur multi-OS d'Intel - mais on ne sait pas où va ce projet. C'est là que MechDôme entre.MechDome est une start-up basée en Californie et constituée en janvier qui a développé un outil de conversion pour créez automatiquement des applications iOS et OS X natives à partir de votre application Android. Pas besoin d'apprendre à utiliser un nouvel IDE ou une nouvelle API. Tout ce que vous avez à faire est d'envoyer un fichier APK à MechDome (pas besoin de leur envoyer votre code source), et l'outil entièrement automatisé compilera un binaire autonome en quelques secondes pour iOS et OS X que le développeur pourra ensuite distribuer sur l'App Store d'Apple. Nous avons eu une interview avec le fondateur et PDG de MechDome, Mario Kosmiskas, pour voir une démonstration de l'outil en action - et cela travaux. Bien qu'il existe certaines limitations dues aux différences fondamentales entre le fonctionnement d'iOS et d'Android (dont nous parlerons ci-dessous), l'outil a déjà produit quelques applications en direct sur l'App Store d'Apple telles que le Open source Client Reddit Lecteur rouge Et un Open sourceSudoku client pour prouver que cela fonctionne.
Applications Android sur iOS avec MechDome
L'objectif déclaré de MechDome est de permettre aux développeurs de convertir une application Android non modifiée en une application native iOS ou OS X. Comparé à des technologies telles que Multi-OS Engine d'Intel ou Xamarin, un développeur Android n'a pas besoin de savoir comment lier une bibliothèque Objective-C parce que l'outil s'en chargera pour vous. Il n'est pas non plus nécessaire d'utiliser un générateur d'interface utilisateur pour modifier votre application Android, car MechDome gère la conversion de tous les éléments de l'interface utilisateur Android. Oui, même les applications pour tablettes Android se traduisent bien dans un format adapté aux iPad.
La plus grande promesse de MechDome est que l'application Android convertie fonctionnera d'une manière familière aux utilisateurs du système d'exploitation cible. Par exemple, le menu de partage Android sera remplacé par la feuille de partage native dans iOS et inclura la possibilité d'utiliser AirDrop le cas échéant. Les applications qui publient des notifications sur Android afficheront à la place une notification dans le centre de notifications iOS. Certaines intentions telles que l'ouverture d'une caméra sur Android ouvriront en effet la caméra sur l'appareil iOS, et les intentions URL sur Android appelleront Safari sur iOS. Les fournisseurs de contenu sur Android qui accèdent aux contacts ou au calendrier accéderont plutôt aux bases de données iOS ou OS X pertinentes pour ces informations.
Mais comme mentionné précédemment, cet outil présente effectivement certaines limitations imposées par la nature du fonctionnement d’iOS. L'un des plus grands défis auxquels est confronté un développeur Android souhaitant convertir son application vers iOS est de savoir comment gérer un service en arrière-plan. iOS est beaucoup plus strict quant au moment et aux types de services d'arrière-plan que les applications tierces peuvent exécuter, pour le meilleur ou pour le pire. De plus, le système d’intention riche présent dans Android et qui permet la communication entre applications est largement absent sur iOS. Enfin, l'API des services Google Play n'est actuellement pas prise en charge, donc toute application s'appuyant sur les services Google ne fonctionnera pas. Ainsi, les développeurs seront principalement limités aux fonctionnalités accessibles directement par saisie manuelle de l'utilisateur, ce qui ne devrait pas poser de problème majeur pour la plupart des jeux ou des applications.
MechDome en cours d'utilisation
Dans une démo privée, l'outil semble effectivement fonctionner comme annoncé. M. Kosmiskas a démontré la compilation de plusieurs applications Android entièrement fonctionnelles dans des applications iOS et OSX fonctionnelles. Les notifications Toast, les notifications dans le centre de notifications, la vue Web, l'accès à la localisation, la saisie de texte et les fonctionnalités générales des éléments de l'interface utilisateur ont tous fonctionné dans la démo. La calculatrice AOSP fonctionnant sur iOS ressemblait et fonctionnait exactement comme sur n'importe quel appareil Android.
La mise à jour d'une application et sa recompilation pour iOS ont également été présentées, et le processus est assez simple. Le développeur, en l'occurrence M. Kosmiskas, a démontré la modification d'une zone de texte pour afficher « XDA-Developers » dans Android Studio. Il a ensuite exporté l'application, généré un APK signé et compilé les binaires iOS et OS X en quelques secondes à partir du serveur MechDome. Lorsque l'application iOS a été démarrée à l'aide d'un émulateur, les modifications apportées dans Android Studio étaient présentes.
Actuellement, MechDome fait l'objet d'un programme bêta public gratuit. Les développeurs peuvent enregistrer leur application sur le site Web MechDome pour recevoir une invitation à tester la conversion de leur application Android. Aucune information tarifaire n’a encore été dévoilée pour le service, malheureusement. Pourtant, c'est un projet intéressant à surveiller si vous êtes un développeur Android cherchant à faire des vagues dans l'écosystème Apple sans avoir à déployer beaucoup d'efforts de votre part.