Existe-t-il un framework multiplateforme pour développer des applications iPhone/Android ?[fermé]

StackOverflow https://stackoverflow.com/questions/30953

Question

Je suis intéressé par l'écriture d'applications pour iPhone et la plateforme Android.J'espérais trouver un middleware/framework qui élimine certaines des différences dans les API et me permette de spécifier la plate-forme cible au moment de la construction.Existe-t-il un tel cadre existant ou prévu ?

Était-ce utile?

La solution

Espace téléphonique est un framework basé sur javascript/css/html qui cible l'iPhone, Android et le Blackberry.Il (au moins sur l'iPhone) peut également être regroupé en tant qu'application native.La couche d'interface utilisateur de ces applications est généralement construite en HTML/Javascript et peut être plus lente qu'une véritable application native.

espace téléphonique


Réagir natif vous permet de créer des expériences d'application de classe mondiale sur des plateformes natives en utilisant une expérience de développement cohérente basée sur JavaScript et React.L'objectif de React Native est l'efficacité des développeurs sur toutes les plateformes qui vous intéressent : apprenez une fois, écrivez n'importe où.Facebook utilise React Native dans plusieurs applications de production et continuera d'investir dans React Native.L'interface utilisateur des applications React Native est constituée de contrôles natifs. Votre interface utilisateur est donc généralement plus rapide qu'une approche purement HTML/javascript pour la gestion de l'interface graphique.

Réagir natif


Unité est un moteur de jeu multiplateforme développé par Unity Technologies et utilisé pour développer des jeux vidéo pour PC, consoles, appareils mobiles et sites Web.Unity se distingue par sa capacité à cibler les jeux sur plusieurs plates-formes.Les plates-formes prises en charge incluent Android, Apple TV, BlackBerry 10, iOS, Linux, la gamme Nintendo 3DS, OS X, PlayStation 4, PlayStation Vita, Unity Web Player (y compris Facebook), Wii, Wii U, Windows Phone 8, Windows, Xbox 360, et Xbox One.

Unité


OpenFL est un port OpenSource de l'API Flash sur Desktop, Browser, iOS, Android, Flash, HTML5, etc.et c'est une option à considérer pour ceux qui viennent d'un monde Flash.Il s'appuie sur des binaires natifs et cible également les navigateurs (Flash/HTML5).

ouvrirfl


MonoGame est une implémentation open source du framework Microsoft XNA 4.x.Il permet aux développeurs XNA de créer facilement des jeux multiplateformes avec une réutilisation de code extrêmement élevée.Il prend actuellement en charge iOS, Android, Windows (OpenGL et DirectX), Mac OS X, Linux, Windows 8 Store, Windows Phone 8, PlayStation Mobile et la console OUYA.

monogame


Adobe Flash Et croyez-le ou non, Adobe Flash peut publier des binaires natifs sur iOS, Android, ordinateur de bureau et bien sûr sur le Web.La performance est raisonnable, mais pas incroyable.Si vous aviez un jeu Flash, vous pourrez peut-être le transférer très facilement sur mobile.Et cela ne nécessite aucun plugin d’aucune sorte.Il crée en fait un binaire autonome natif qui s’exécute sur chaque plate-forme.

adobe

Autres conseils

Modifier:Depuis que cette question a été posée, un certain nombre de solutions viables ont été développées.Bien que le ton de cette réponse puisse encore être exact (pour bénéficier à 100 % du matériel/système d'exploitation, une application native est probablement nécessaire), vous pouvez trouver un certain nombre de réponses possibles sous cette question.

Android et iPhone ont tous deux des interfaces utilisateur très définies.Même si vous trouviez un framework qui comblait les énormes différences aux niveaux d'aspect les plus bas (Android est programmé en Java au-dessus d'une VM personnalisée, l'iPhone est un code natif programmé en Objective-C) et aux niveaux supérieurs (les applications iPhone sont un complètement en bac à sable et isolé, le modèle objet Android est distribué et les classes sont librement invoquées entre les applications et les bibliothèques), votre application finale semblerait étrangère et déplacée dans l'une ou l'autre.Pensez au manque de multitouch sur Android ou au manque de boutons matériels dédiés sur l'iPhone.

Votre meilleur pari serait de développer une interface utilisateur spécifique à la plate-forme et d'avoir le modèle et la logique de base de votre application dans une sorte de langage de script.Trouvez ensuite un interprète en C simple (pour iPhone) et un en Java (pour Android). Scheme, Lisp et Javascript pourraient faire l'affaire.Assurez-vous simplement que l'interprète n'est pas exposé aux utilisateurs finaux, sinon vous violeriez le NDA de l'iPhone...

Si votre application est gourmande en données, vous pouvez suivre le modèle de nombreuses applications iPhone et développer des interfaces utilisateur natives pour iPhone et Android, et disposer de toute la logique d'application sur un serveur distant.Votre interface utilisateur devient la seule partie installée de l'application et tout le reste est hébergé sur le net.Cela présente l’avantage supplémentaire d’avoir la possibilité de proposer des profils itinérants entre différents appareils et une interface web.

Ajout d'un autre service à la pile ici : Rhomobile cherche à créer exactement cela.Cela semble abasourdi – repensez au Web au début des années 90.Mais cela pourrait être le moyen le plus simple de porter votre application préférée sur toutes les principales plates-formes mobiles.

Plus de détails: Rhomobile promet :Créez une fois, déployez sur n'importe quel smartphone

( Note:Je ne travaille pas pour Rhomobile ;Je viens de découvrir l'histoire aujourd'hui.)

Je n'ai aucune expérience directe avec iPhone ou Android, mais je viens de lire un article sur "Titanium" et lorsque j'ai visité leur site, j'ai trouvé ceci :

http://www.appcelerator.com/products/titanium-mobile/

Je travaille pas mal avec les solutions "natives" Obj-C et Java (4 Android).Je crée également une application avec Appcelerator pour iPhone et Android qui fonctionne très bien.Les API Appcelerator sont assez étendues.L'application Appcelerator Kitchen Sink affiche de nombreux éléments et fonctionnalités prêts à être inclus dans une application ( https://github.com/appcelerator/KitchenSink ).Cependant, comme mon application Appcelerator n'est pas trop complexe, je ne me sens pas à l'aise de la recommander de manière générale.Un collègue m'a dit que son équipe de développement l'avait essayé et qu'elle n'était pas satisfaite.Il ne pouvait cependant pas citer de véritable raison.Cependant, je vais continuer à le tester pour voir où sont les limites.Une grande limitation est la prise en charge de la plate-forme (actuellement uniquement iOS et Android).

Quant à Rhodes, cette solution semble assez impressionnante sur le papier, notamment en termes de plateformes supportées.J'y vois cependant quelques problèmes.Premièrement, les applications de démonstration et l’application évier de cuisine nécessitent beaucoup d’espace disque, fonctionnent un peu de manière saccadée et ont parfois l’air géniales (du moins sur Android).Deuxièmement, il existe très peu d’applications du « monde réel » à trouver.Je veux dire des applications qui ont été téléchargées au moins plus de 1 000 fois et qui répondent à des besoins réels autres que la simple démo.Pour moi, la convivialité est la priorité absolue dans les applications mobiles (grand public) !

Je vois un gros potentiel dans les applications HTML/CSS/JavaScript/PhoneGap.Récemment, j'ai lu pas mal d'articles sur les grandes entreprises utilisant HTML(5) pour créer leurs applications (par ex.Netflix http://mashable.com/2010/12/03/netflix-html5/, Zynga http://www.spielsucht24.de/2010/12/21/zynga-launches-html5-mafia-wars-atlantic-city-for-mobile-web/) Il reste encore quelques problèmes de convivialité et de vivacité qui doivent être résolus lors de la création d'applications mobiles avec les technologies Web.Un autre problème pourrait être le test, le débogage et la maintenance des applications HTML au niveau de l'entreprise.

RhomobileLe framework Rhodes de fait cela.Les applications Rhodes sont natives pour chaque smartphone individuel

Mytopie a un framework inédit appelé RUGS.Ils ont récemment présenté une présentation à la conférence TechCrunch 50 et leur technologie semblait très intéressante.Ils ont pu compiler une application qui fonctionnait sur toutes les plateformes de smartphones (et ont pu profiter des capacités de chacun...accéléromètre sur iPhone par exemple).Malheureusement leur site web dit que vous devez leur envoyer un e-mail si vous souhaitez plus d'informations.Cela vaut peut-être la peine de leur envoyer un e-mail si vous souhaitez vraiment développer un système ciblé sur les smartphones multiplateformes.

J'ai regardé leur présentation sur le webcast TC50, mais je ne suis malheureusement pas en mesure de trouver une vidéo pour vous pour le moment.

Veuillez poster ici avec un résumé du framework que vous décidez d'utiliser et pourquoi vous l'avez choisi.

QuickConnectiPhone vous permet d'écrire votre application en JavaScript et pourtant elle est toujours installable.Une version Android est actuellement en version Alpha inédite.

Avoir les deux vous permettrait de créer votre application en JavaScript, CSS et HTML, de passer des appels vers l'iPhone ou le téléphone Android pour connaître les comportements de l'appareil tels que les vibrations, les emplacements GPS, etc.

La version iPhone est téléchargeable sur https://sourceforge.net/projects/quickconnect/ et si vous me contactez je peux vous envoyer la version Android.

Même si vous le vouliez vraiment, il ne serait pas pratique de créer votre propre framework multiplateforme : iPhone est du code natif, Android est Java.

Bien sûr, rien ne vous empêche, par exemple, de partager la logique C/C++ de base d'une application de bureau avec son homologue iPhone.

Regarde ça:

http://www.xmlvm.org/overview/

Il s'agit d'un projet qui tente de compiler de manière croisée des programmes écrits dans une variété de langues sources vers une variété de langues cibles.L'un des premiers cas de test consistait à écrire des programmes en Java et à les exécuter sur un iPhone.Regarder la vidéo sur le site en vaut la peine.Ils ont discuté de la possibilité de pouvoir également cibler Android.

Cela dit, je ne l'ai pas essayé.Le projet semble plutôt bêta et il n'y a pas beaucoup d'activité sur leur site SourceForge.

Vous pouvez développer des applications Java pour iPhone avec iSpectrum.De cette façon, vous pourrez réutiliser une quantité cohérente de votre code d'application entre Android et iPhone (et éventuellement des applets de bureau ou des MIDlets J2ME selon ce que vous faites :) )

Plus d'infos sur http://www.flexycore.com

Votre meilleur choix sera AirPlay, visitez Site Internet AirPlay

Un clic et vous déployez pour Android, Iphone, Samsung Bada, Symbian, Windows Mobile, BREW, WebOS et Maemo.

Mon livre HTML5 pour iOS et Android vous permet de prendre des applications Web créées en HTML, JavaScript et CSS et de les transformer en applications autonomes que vous pouvez télécharger sur les magasins d'applications (gratuitement ou à vendre) – http://html5formobile.com - les wrappers permettant de faire cela pour les SDK iOS et Android sont disponibles gratuitement sur le site Web, et vous n'avez besoin d'aucune connaissance de l'un ou l'autre langage de programmation si vous suivez les instructions du livre.

Je me rends compte que cette question est plutôt ancienne, mais elle revient dans les recherches Google, j'ai donc pensé que ce serait une bonne idée de la mettre à jour.

Je pense qu'un bon framework actuellement disponible qui cible les deux plates-formes et fonctionne réellement en natif, permettant d'écrire des jeux performants serait Corona.

Lien: http://www.anscamobile.com/corona/

nous avons réussi avec le middleware Ice-Touch à faire en sorte que les appareils iPhone et Android communiquent avec les mêmes serveurs.avec une génération de code assez décente pour les objets et méthodes réseau.mais la logique locale doit encore être écrite dans le langage du téléphone.de cette façon, nous pourrions tirer parti des avantages de l'interface utilisateur de chacun, tandis que notre modèle réside sur le même serveur et que nos contrôleurs sont générés automatiquement.

texte du lien

Je voulais juste mentionner qu'une application Web utilisant le plugin Gears peut utiliser Géolocalisation (N'est plus disponible) (services de localisation GPS et Wifi) et cela fonctionne sur Android (le navigateur du G1 est livré avec la prise en charge Gears intégrée).

Je ne sais pas s'il y a un espoir d'obtenir la prise en charge de Gears sur un iPhone, mais c'est une autre approche utile pour créer des applications Web avec des fonctionnalités supplémentaires tout en disposant d'une large portée d'appareils.

Un tel framework, par nature, ne pouvait pas tirer parti des fonctionnalités spécifiques à l'iPhone telles que l'accéléromètre ou les gestes multi-doigts.Cela annulerait également probablement les conditions du SDK d'Apple.

Comme l'a suggéré Andyuk, envisagez d'écrire une application Web.Fonctionnalités de base telles que appeler quelqu'un peut être accessible de cette façon.

Il n'y a rien d'existant (sur lequel on peut s'appuyer, voire rien du tout), et je doute qu'il y ait un jour quelque chose d'officiel prévu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top