Android: PhoneGap vs Webview

J'ai fait des recherches sur PhoneGap et je suis maintenant dans une impasse et j'ai besoin de conseils. Je sais que PhoneGap "convertit" essentiellement html5, CSS, JS sites en "apps" pour la distribution, ce qui m'amène à ma question:

pourquoi ne pas simplement utiliser un webview dans une activité pour faire la même chose et garder l'application native?

30
demandé sur Benjamin 2012-05-18 18:07:36

3 réponses

L'avantage de PhoneGap est qu'il fournit des API qui permettent à votre HTML/javascript d'interagir avec le téléphone (caméra, accéléromètre, média, etc.).)

ces API sont standard sur plusieurs appareils (iOS, Android, WinPhone, Blackberry, etc.). Vous pouvez donc écrire un jeu de HTML / javascript et le déployer sur plusieurs plateformes.

si vous venez de créer un WebView, vous n'aurez pas les API de PhoneGap et vous devrez construire des conteneurs sur chaque plate-forme que vous êtes intéressé par.

31
répondu user1403649 2012-05-18 14:46:23

bonne question j'ai cherché moi aussi, parce que nous sommes allés dans la solution Phonegap et je pense que c'est une mauvaise façon pour nous.

L'histoire: C'est très vrai si vous écrivez une fois un UI avec des compétences de développeur web que vous n'avez pas besoin de connaître la langue maternelle et il compiler, et prêt pour le test. Les développeurs Web sont plus tellement plus élevé la demande = > Prix développeur encore moins cher.

quand le client veut un Jalon 1 pour sa grande idée il demandera à quelques entreprises, les pigistes sur le développement de prix et de délai. Si c'est très basique, la version de l'application avec Phonegap vous aurez moins de frais de développement (désactivé si vos compétences de développement web sont les mêmes que les compétences de développement de plate-forme) avec webView à la deuxième place et le dernier le natif.

le client est satisfait du résultat de L'application buit avec Phonegap et veut obtenir plus d'investisseurs afin qu'il fasse une présentation, où ils demandent plus de fonctionnalités.

À Milestone 2 vous allez ajouter quelques fonctionnalités. Certains sont faciles à installer en ligne de commande et vous l'obtenez, certains ne sont pas. Peut-être que vous serez malchanceux car vous voulez une combinaison de 2 plugin existants avec quelques extras. La conclusion sera: vous devez développer un plugin. À ce stade est déjà un très grand signe d'interrogation qui est moins cher: le plugin Phonegap + Phonegap ou un WebView. Si vous avez besoin de 5 plugin existant et votre a une petite modification, que Phonegap encore. Mais si vous avez besoin de seulement 1 plugin, seulement la vôtre, que la vue web est la bonne façon. Il y a aussi des CAs qui rendent la structure Phonegap inutile. Il y a aussi un problème avec le système de contrôle de version sous Phonegap si vous développez des fichiers web, et du code natif aussi: certains se régénèrent à chaque Compilation, d'autres non. Est encore plus cher la plate-forme native. Maintenant, les caractéristiques requises sont développées. Le client fera une démo pour les investisseurs, où sera visible la vitesse d'exécution avec ces nouvelles fonctionnalités. Ou ici ils auront besoin l'optimisation, la vitesse d'exécution ou après la publication sur le marché, ils verront que certains fonctionnent avec des téléphones bas de gamme et pas l'ultime, que ws utilisé lors des démos et ils décideront d'aller à Étape 3: accélérer.

lors de l'optimisation, accélérez (Étape 3) vous déciderez que vous avez besoin de l'interface graphique native. Après tout GUI développé avec web now vous aurez besoin de jeter à la clôture et mettre en œuvre le côté, peut-être certaines pièces ont même besoin de NDK pour accélérer. Pas moyen d'être bien ici avec Phonegap. Mais vous avez engagé des développeurs web, ou engagé cette société. Maintenant, retournez à cette entreprise , les développeurs qui peuvent faire du code natif. Ils ne partiront pas de 0, donc ils ont besoin d'analyser le code, refactor et votre prix de développement augmentera au moins de 50% comme vous le feriez à partir de 0 avec native.

9
répondu 2013-08-30 20:27:22

Bonne Question, vous pourriez utiliser webview pour cela, mais vous ne serez pas en mesure d'accéder à des fonctions natives comme sonnerie, appareil photo, et tout ce qui, toutefois, l'application fait de cette façon sera considérée comme une application native.

1
répondu Zeal Murapa 2012-11-26 13:41:42