cordova test - Was sind die Einschränkungen und Nachteile von Phonegap oder HTML5 im Vergleich zu denen von Android




app install (4)

Vorteile der Erstellung von Mobile Web App: 1) Benötigen nur HTML5 / CSS / Javascript Fähigkeiten vs Objective-C oder Java. Mit Mobl ( http://www.mobl-lang.org ), einer domänenspezifischen Sprache für die Erstellung von mobilen Webanwendungen, die nach javascript / html übersetzen, haben wir die Dinge noch einfacher gemacht. 2) Single-Code-Basis für alle Plattformen (iOS, Android, Windows 7, mobiles Web) 3) Schnelles Testen und Deployment (bis zu dem Zeitpunkt, an dem Sie es phonegapieren, zu welchem ​​Zeitpunkt Sie den App Store-Bedingungen unterliegen) 4) Mit Phonegap können Sie weiterhin die Vorteile von Verteilung und integriertem Bezahlen über den App Store oder Android Market nutzen

Nachteile: 1) Schlechte Leistung, besonders wenn Ihre App grafisch intensiv ist, zB ein Spiel. Sie können Caching implementieren oder einige Drittanbieter-Lösungen (zB Sibblingz) für native Grafikbeschleunigung nutzen, aber eine native App ist meist schneller / glatter als eine mobile Web-App. 2) Mangel an vorgefertigten UI-Widgets, Übergängen, Standardsteuerelementen, usw. Ihre Entwicklungszeit kann länger dauern, besonders wenn Sie eine aufpolierte App mit einem nativen Look & Feel suchen. Sie können versuchen, Sencha Touch, JQ Touch oder ähnliche Tools mit vorgefertigten UI-Elementen zu verwenden, aber Sie werden wahrscheinlich immer noch eine Menge Zeit damit verbringen müssen, die App so zu gestalten, dass sie nativ aussieht.

Also, sollten Sie eine mobile Web-App oder eine native erstellen? Wenn Sie eine grafisch aufwendige App erstellen oder rechenintensive Operationen durchführen, sollten Sie unbedingt nativ vorgehen, da die Tools noch nicht so weit sind, um die Arbeit für mobile Web-Apps zu erleichtern. Wenn Sie etwas ziemlich einfaches erstellen und kein natives Styling oder Design-Polish benötigen, gehen Sie auf die mobile Webroute.

Ich bin gespannt, ob es irgendwelche Nachteile oder Einschränkungen bei der Verwendung von Phonegap im Vergleich zur Verwendung von Android gibt. Was können wir sonst noch tun, was mit der anderen Plattform nicht erreicht werden kann?

Warum sollte man Phonegap über Android (neben Budget- oder Cross-Plattform-Kompatibilität) speziell wählen oder umgekehrt? Ich suche nach klaren Szenarien mit Begründungen.


PhoneGap Pros

PhoneGap ist eine ausgezeichnete Lösung in einer Reihe von Situationen:

Mehrere Plattformen: Da das Frontend der Anwendung mithilfe von Webtechnologien erstellt wird, kann eine PhoneGap-Anwendung mit genau demselben Quellcode auf verschiedenen Plattformen bereitgestellt werden.

Zugriff auf grundlegende native Funktionalität: Wenn die Anwendung nur minimalen Zugriff auf die nativen APIs wie Kamera, Geolocation und Kontakte benötigt, ermöglicht PhoneGap den Zugriff auf diese APIs mit nur wenigen Zeilen JavaScript-Code.

Offline-Nutzung: Obwohl die App mit Web-Technologien erstellt wurde, kann sie weiterhin Offline-Funktionen bereitstellen und hat Zugriff auf den lokalen Cache des Browsers.

PhoneGap Nachteile

Da das Frontend der Anwendung in JavaScript eingebaut ist, verursacht es eine Reihe von Einschränkungen.

Datenverarbeitung: Native Sprachen sind viel schneller als JavaScript für die Datenverarbeitung auf dem Gerät.

Hintergrundverarbeitung: Eine große Anzahl von Anwendungen basiert auf Hintergrundthreads, um eine reibungslose Benutzererfahrung zu ermöglichen: zum Beispiel die Berechnung der GPS-Positionen im Hintergrund. PhoneGap-APIs werden mit JavaScript erstellt, das kein Multi-Thread-Verfahren ist und daher keine Hintergrundverarbeitung unterstützt.

Greifen Sie auf erweiterte native Funktionen zu: Eine Reihe von nativen APIs wird von den APIs von PhoneGap noch nicht unterstützt.

Komplexe Geschäftslogik: Eine Reihe von Anwendungen wie Unternehmensanwendungen sind sehr komplex. In diesem Szenario ist es einfach besser, eine bestimmte Menge nativen Code zu haben.

Erweiterte Grafik: Apps, die erweiterte Grafiken verwenden, auf die nur mithilfe von Bibliotheken von Drittanbietern zugegriffen werden kann, werden am besten nativ ausgeführt.


Vollständige Offenlegung Ich bin einer der Hauptverantwortlichen für die Android-Implementierung von PhoneGap, daher mag meine Meinung voreingenommen sein, aber ich denke, dass ich fair bin.

Um Ihre Frage zu beantworten, hängt es wirklich von Ihren Anforderungen ab. Sie haben Budget und Cross-Plattform bereits eingestellt, was zwei der wichtigsten Vorteile von PhoneGap sind. Zum Beispiel, wenn ich nie eine Plattform außer Android zielen wollte, würde ich wahrscheinlich mit nativer Android-Entwicklung gehen, aber wenn wir auf andere Plattformen gehen würden, würde ich PhoneGap wählen. Außerdem würde ich mir mein Team ansehen, sind das harte Java-Programmierer? Geh Android. Sind sie HTML-Entwickler? Go PhoneGap oder reines HTML5.

Es hängt auch davon ab, welche Art von Anwendung Sie schreiben. Ein Ego-Shooter, Android gehen. Eine tabellengesteuerte Datenanwendung, PhoneGap ist der Weg zu gehen.

Wie auch immer, ohne zu wissen, welche Art von App Sie entwickeln möchten, ist es schwierig, spezifisch zu sein.


Android SDK Build Tools sind genau das, was der Name sagt, sie sind; Tools zum Erstellen von Android-Anwendungen. Es ist sehr wichtig, die neueste Build-Tool-Version zu verwenden (automatisch von Ihrer IDE über das Android SDK ausgewählt), aber der Grund für die alten Versionen ist die Unterstützung der Abwärtskompatibilität, dh wenn Ihre Projekte davon abhängen ältere Versionen der Build Tools.





android cordova