97 votes

Développement d’applications natives à l’aide de Phonegap

Je suis récemment tombé sur Phonegap. Avoir quelqu'un d'entre vous l'ont essayé. C'est un outil incroyable qui prétend que les développeurs peuvent utiliser le HTML 5 basée cadre comme le Sencha touch et Jquery en même temps avoir accès à des fonctionnalités natives du téléphone. Le code est portable à partir de Android à l'Iphone avec un certain effort. Avant de me plonger dedans je veux savoir quel est le forum de l'expérience avec Phonegap. Quels sont les points de douleur et est-il vraiment évolutive pour les applications d'entreprise au niveau de développement.

95voto

TNC Points 4122

J'ai construit un couple d'applications à l'aide de PhoneGap, et pour ce qu'elle offre, c'est génial. Il ya un couple de notes rapides, je tiens à souligner, ce qui pourrait vous aider.

Disable device-based features you're not using L'accéléromètre, la géolocalisation fonctionnalités sont par défaut activée. Si vous ne l'utilisez pas, j'ai éteint, que votre application se chargera plus vite (initialiser) et d'exécuter plus lisse.

onDeviceReady - C'est la méthode qui est appelée une fois phonegap est chargé et prêt. $(document).prêt ou ce que vous êtes habitué, ne s'applique pas ici, sauf si vous êtes seulement à faire l'interface/hard-codé en HTML choses. Si vous êtes en interaction avec l'iPhone fonctionnalités, comme la Géolocalisation, vous devrez faire tout ce que après onDeviceReady a été appelé.

Pick a UI/library Il y a une tonne d'options pour l'interface/les bibliothèques, jquery mobile, sencha touch, jqtouch, etc.., Qui offrent une approche unique, et de fonctionnalités. Faire de la recherche et de l'utiliser, mais éviter de combiner. Vous pouvez lire sur certains plus d'options, d'outils ici: http://www.phonegap.com/tool (lien mis à jour)

Also, more on just mobile development in general, with PhoneGap Si vous êtes à la recherche pour créer des applications, qui sont distribués par le biais de l'Android market et App Store iPhone, je le ferais lire à travers leurs listes exhaustives pour des lignes directrices sur la façon de développer votre application. Par exemple, dans les outils lien ci-dessus, il est un "outil/plugin" appelée Facile APNS - ce qui est utile pour Android - et techniquement faisable sur l'iPhone, il viole l'accord de développement, car il est dit que vous devez utiliser la Pomme de notification de réseau, etc.. C'est juste un exemple, mais la lecture sur ce genre de choses va vous faire économiser beaucoup de maux de tête, si c'est votre objectif final.

Dans l'ensemble, c'est très léger pour les applications, surtout si vous venez d'un développement web d'arrière-plan. LocalStorage, Géolocalisation, etc.. fonctionne vraiment bien. J'espère que cela vous aide un peu... et se sentir à poser des questions.

Édition Supplémentaire:

Je pense vraiment que cela revient à ce que vous voulez faire, et ce que vous savez comment le faire. Matt a souligné que le développement d'applications natives pour iOS est mieux, etc.. Ouais, si vous avez le temps et les connaissances pour apprendre que - bien sûr, natif sera mieux. Mais PhoneGap est faite pour les développeurs web qui peuvent prendre leurs compétences et de créer des applications. Aussi, PhoneGap permet de construire rapidement des applications pour iOS, Android, Symbian, Palm, Blackberry. Avec des ajustements mineurs à votre base de code pour chaque.

52voto

ATSiem Points 971

Voici toutes les meilleures Performances guides que j'ai lu pour PhoneGap... il y a beaucoup de choses à se méfier de vous garantir solide, des performances stables... mais vous pouvez prendre tout cela en seulement une soirée de lecture.

Voici les meilleurs pépites:

PhoneGap/Web Mobile Astuces Pour Améliorer Les Performances

Permettant À De Nouvelles Fonctions

L'Architecture

L'architecture de votre Application en Ext JS 4: http://www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-2

29voto

Matt Wilding Points 12931

Avant d'exprimer mon opinion de Phonegap, j'ai besoin d'émettre un petit avertissement disant que je suis, en aucun cas, un développeur web. Pour moi, écrire du code JavaScript et CSS, c'est comme arracher des dents. Cela dit, je n'aime pas Phonegap.

Il y a quelques très attrayant aspects du cadre, surtout le "Write-Once-Run-Anywere" appel et le "je-Ne-Avoir-Pour-Apprendre-Objective-C?" appel. Le cadre peut même vous donner accès à certaines fonctionnalités du matériel comme l'accéléromètre. Tous ces éléments sont valables, dans une certaine mesure.

Cela dit, aucune des grandes applications iOS sont construits à l'aide de toute sorte de croix le cadre de la plateforme. Il y en a tellement subtile et élégante de l'INTERFACE utilisateur, les interactions qui sont gérées par le natif UIKit contrôles que beaucoup d'utilisateurs et de développeurs prennent pour acquis jusqu'à ce qu'ils sont manquants, comme la flopée d'une incroyable vue détaillée des courbes d'animation et de défilement des rebonds qui n'existent pas dans le web-la vue de l'INTERFACE utilisateur. Vous pourrait peiner à les reproduire parfaitement, mais pour que l'investissement en temps, pourquoi ne pas simplement aller indigènes?

Un deuxième point à noter est que le soutien de la communauté pour Phonegap-construit des applications iOS est considérablement plus petite que nativement des applications développées. Si vous êtes l'un de s'appuyer sur la communauté au cours de projets, ce qui devrait également vous donner une pause.

En fin de compte, il revient à la qualité de l'expérience que vous souhaitez offrir. La limite supérieure est plus faible avec Phonegap. Si vous êtes prêt à accepter une moins-que-excellente expérience utilisateur en échange de la réduction du temps de développement et la portabilité accrue, que c'est un très viable cadre.

En tant que sous-texte pour tous ceux qui sont intéressés, Marco Arment et Dan Benjamin récemment discuté de ce sujet. Vous pouvez l'écouter ici.

4voto

ghenne Points 769

La procédure d’installation implique un certain nombre de paquets (Java, Apache Ant, Ruby, iOS SDK, SDK Android et PhoneGap lui-même), qui tous doivent être correctement installé et configuré. Cela peut être un effort important. Pour être honnête, ils ont ce qu’on appelle PhoneGap Build en version bêta qui devrait faire c’est beaucoup plus facile.

Nous l’utilisons avec NS Basic/App Studio pour produire des applications qui sont admissibles à l’app store.

2voto

muayyad alsadi Points 544

si vous n'êtes pas de faire un jeu, ni un widget, tout simplement beau d'application phonegap est votre choix.

Mais vous devez prendre soin de vos JS, évitez de faire quelque chose en JS par exemple, si vous voulez faire une animation éviter l'établissement d'une minuterie avec de petits intervalles (par exemple. 100 ms), éviter de jquery et autres animations. Par exemple, au lieu de l'animation de fondu par la définition d'une courte période de minuterie de la diminution de l'opacité à chaque point, étape par étape (ce est comment jquery fondu de travail), vous devez utiliser css3 transitions à partir de l'opacité de 1 à opacité de 0.

Mon conseil est d'aller avec quelque chose comme zeptojs.com après tout, phonegap ne fonctionne pas ie6 :-)

De vérifier certains tutoriel sur la façon de faire de votre JS plus de lumière

http://bcksp.blogspot.com/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X