2012-05-18 22 views
28

Ich habe PhoneGap recherchiert und ich bin jetzt in einer Sackgasse und brauche einen Rat. Ich weiß, dass PhoneGap im Wesentlichen html5, css, JS-Sites zu "apps" für die Verteilung "konvertiert", was mich zu meiner Frage führt:Android: PhoneGap vs Webview

Warum würde man nicht einfach ein Webview innerhalb einer Aktivität verwenden, um das Gleiche zu tun und Halten Sie die App nativ?

Vielen Dank im Voraus!

+2

PhoneGap konvertiert html, css, js nicht in native für die Verteilung. Es meldet ein WebView, fügt W3C-APIs hinzu und fügt alles in eine native Android-App ein. –

+0

+1. Ich habe mich dasselbe gefragt. –

Antwort

29

Der Vorteil von PhoneGap ist, dass es APIs bereitstellt, die Ihre HTML/Javascript aktiviert mit dem Telefon (zB Kamera, Beschleunigungssensor, Medien etc.)

Diese APIs sind Standard über mehrere Geräte (iOS, Android zu interagieren, WinPhone, Blackberry usw.). So können Sie einen Satz HTML/Javascript schreiben und auf mehreren Plattformen bereitstellen.

Wenn Sie nur ein WebView erstellt würden Sie nicht die PhoneGap APIs haben, und Sie müssten Container bauen auf jeder Plattform Sie interessiert waren.

1

gute Frage, haben Sie noch webview dafür verwenden könnte, aber Sie gewonnen‘ Sie können auf native Funktionen wie Klingelton, Kamera und all das zugreifen, die App wird jedoch als native App angesehen.

9

Gute Frage Ich habe mich auch gesucht, weil wir in Phonegap Lösung gegangen sind und ich denke, es ist ein falscher Weg für uns.

Die lange Geschichte: Das ist sehr wahr, wenn Sie einmal eine Benutzeroberfläche mit Webentwickler Fähigkeiten schreiben als nicht benötigt, um die Muttersprache zu kennen und es kompilieren, und bereit zum Testen. Web-Entwickler sind umso höher die Nachfrage => Entwicklerpreis noch billiger.

Wenn der Kunde eine Meilenstein 1 für seine großartige Idee will, wird es ein paar Unternehmen, Freiberufler über Entwicklungspreis und Zeit fragen. Wenn Sie eine sehr einfache Anwendung Version mit Phonegap haben, haben Sie weniger Entwicklungskosten (off, wenn Ihre Web-Entwickler-Fähigkeiten sind die gleichen Laver als Plattform-Entwickler-Fähigkeiten) mit WebView an zweiter Stelle und zuletzt die native.

Der Client ist zufrieden mit App-Ergebnis buit mit Phonegap und will mehr Investoren bekommen, damit es eine Präsentation machen wird, wo sie mehr Funktionen fordern.

Bei Milestone 2 werden Sie ein paar Funktionen hinzufügen. Einige sind einfach zu installieren und Sie bekommen es, manche nicht. Vielleicht wirst du Pech haben, da du eine Kombination aus 2 vorhandenen Plugins mit ein paar Extras willst. Die Schlussfolgerung wird sein: Sie müssen ein Plugin entwickeln. An dieser Stelle ist schon ein sehr großes Zeichen der Befragung, das ist billiger: das Phonegap + Phonegap Plugin oder ein WebView. Wenn du 5 existierendes Plugin benötigst und du ein wenig Modifizierung hast, dann immer noch Phonegap. Aber wenn Sie nur 1 Plugin brauchen, nur Ihr, dann ist die Webansicht der richtige Weg. Es gibt auch Fälle, die die Phonegap-Struktur unbrauchbar machen. Es gibt auch ein Problem mit dem Versionskontrollsystem unter Phonegap, wenn Sie Web-Dateien entwickeln, und auch systemeigenen Code: einige werden zu jedem Build-Zeitpunkt neu erstellt, andere nicht. Dennoch ist teuer die native Plattform. Jetzt werden die erforderlichen Features entwickelt. Der Kunde wird eine Demo für Investoren machen, bei der die Ausführungsgeschwindigkeit mit diesen neuen Funktionen sichtbar wird. Oder hier werden sie Optimierung, Laufzeit beschleunigen oder nach der Veröffentlichung auf dem Markt werden sie sehen, einige laufen mit Low-End-Handys und nicht die ultimative, die bei Demos verwendet wurde und sie werden sich entscheiden, zu gehen Meilenstein 3: beschleunigen.

Bei der Optimierung, beschleunigen (Meilenstein 3) entscheiden Sie, wie Sie native GUI benötigen. Nachdem alle GUI mit Web jetzt entwickelt werden müssen Sie Zaun und die Seite implementieren, vielleicht müssen einige Teile sogar NDK beschleunigen. Keine Möglichkeit, hier mit Phonegap gut zu sein. Aber Sie haben Webentwickler eingestellt oder diese Firma beauftragt. Nun geh zurück zu dieser Firma, Entwickler, die nativen Code machen können. Sie werden nicht bei 0 anfangen, also müssen sie den Code, Refactor analysieren und Ihr Entwicklungspreis wird mindestens um 50% steigen, wie Sie es von 0 mit nativ starten würden.