Native Apps (iOS/ Android) vs. Hybrid Apps

Sven E.
Sven E., Geschäftsführung
24 Feb 2019
Native Apps (iOS/ Android) vs. Hybrid Apps

Buzzwoo ist seit jeher Spezialist in Sachen mobile App-Entwicklung – sowohl was native Apps anbelangt, als auch im Fall von hybriden Apps. Wenn Sie mit dem Gedanken spielen, eine App Agentur mit der Entwicklung einer mobilen App für Ihr Unternehmen zu beauftragen, müssen Sie sich zuerst darüber klar werden, dass es verschiedene Umsetzungsmöglichkeiten in der Software-Entwicklung gibt. So ist eine der zentralen Fragen vor dem Entwicklungsstart, welchen Weg man gehen möchte.

Leider ist diese Entscheidung oft nicht ganz einfach. Wie üblich in diesen technischen Fragen gibt es auch hier keine eindeutige Antwort. Welche Art von App für Sie persönlich vorteilhafter ist, hängt vor allem von Ihren individuellen Anforderungen als Kunde ab: Was soll die App können? Wie viel Zeit kann in die Entwicklung investiert werden? Und an welches Budget müssen Sie sich halten?

Im folgenden Artikel haben wir versucht, die Unterschiede zwischen nativen und hybriden Apps genauer aufzuschlüsseln, um Ihnen im Endeffekt die Entscheidung zu erleichtern, welche Art von App sich besser für Ihr persönliches Projekt eignet. Also stürzen wir uns am besten gleich ganz tief in die Materie: Native vs. Hybride App-Entwicklung, los geht’s!

Ein paar Fakten und Daten zum Einstieg

Beginnen wir doch mit ein bisschen Statistik:

  • 86,2 % aller mobilen Endgeräte in Deutschland nutzen Android
  • 12,9 % aller mobilen Endgeräte in Deutschland nutzen iOS

Quelle – Gartner (Stand August 2016)

Man muss kein Adam Riese sein, um sich ausrechnen zu können, dass andere, auf dem deutschen Markt existierende, mobile Betriebssysteme vernachlässigbar sind – daher werden wir uns in diesem Artikel ausschließlich auf die beiden großen Player – Apple und Android – konzentrieren. Wie Sie sich vielleicht schon gedacht haben, ist bei der App-Entwicklung bei beiden Varianten eine relativ spezifische und individuelle Herangehensweise erforderlich.  

Die mobile Welt der Smartphones und Tablets gewinnt immer mehr an Bedeutung und läuft althergebrachten Desktop-Computern und Laptops in manchen Fällen sogar völlig den Rang ab – zum Online-Shopping und Flugbuchungen im Internet, zum E-Mails lesen und YouTube schauen etc. braucht man schon lange keinen Computer mehr. Das alles und noch viel mehr geht genauso gut und meist unkomplizierter auf mobilen Endgeräten. Dementsprechend werden die technischen Voraussetzungen immer höher und die mobilen Betriebssysteme immer komplexer.

App-Entwickler müssen heutzutage darauf gefasst sein, nicht nur mit den herkömmlichen und lange etablierten Smart Devices, wie Smartphones und Tablets, zu arbeiten, sondern auch mit unzähligen neuen sogenannten Wearables (darunter versteht man mobile Endgeräte, die klein genug sind, um am Körper getragen zu werden, z.B. Smartwatches wie die Apple Watch, Lauf- und Fitness-Armbänder, Datenbrillen etc.).  

Die Multi-Plattform- oder Cross-Plattform-App-Entwicklung (das bedeutet, dass ein und dieselbe App mit nur einem Source-Code auf verschiedenen Betriebssystemen läuft) bringt ebenfalls diverse Herausforderungen mit sich, gibt Entwicklern auf der anderen Seite aber auch die Chance, noch beeindruckendere neue Produkte zu schaffen. Die Entscheidungsfindung, ob man mit einer nativen oder hybriden App besser beraten ist, wird dadurch allerdings leider Gottes auch nicht einfacher. Am besten nähern wir uns dieser Frage also ganz objektiv und beleuchten einmal anschaulich, was diese kompliziert klingenden Begriffe und Eigenschaften eigentlich wirklich bedeuten.

Native Apps

Native Apps sind Anwendungen für Smartphones und Tablets, die speziell für ein konkretes mobiles Betriebssystem entwickelt wurden. Wenn wir bei buzzwoo Apps für iOS, also das hauseigene Betriebssystem von Apple, entwickeln, nutzen wir für gewöhnlich die Programmiersprachen Swift und Objective-C, während bei Apps für das markenübergreifende Android-Betriebssystem üblicherweise Java zum Einsatz kommt.

Native Apps – die Vorteile:

Großartige Performance – native Apps wurden speziell und ausschließlich für ein ganz bestimmtes Betriebssystem (und dessen konkrete Anforderungen und Eigenheiten) entwickelt, weshalb diese Apps schneller und ausgeklügelter sind als die hybriden Kontrahenten. Diese Art von App ist daher die perfekte Wahl, wenn die gewünschte App eine besonders hohe Leistung bringen muss, wie es zum Beispiel bei Mobile Games der Fall ist, aber auch bei vielen anderen komplexen Apps, die vor allem auf Hardware-Komponenten zugreifen.

Bessere UX (also User Experience) – sowohl Android-, als auch iOS-Apps besitzen ganz individuelle Eigenschaften, Funktionsweisen und Merkmale, die sich für die Nutzer-Gemeinde vertraut und natürlich anfühlen. Aber was heißt das eigentlich genau? Man könnte es wie folgt beschreiben: Langjährige Android-Nutzer werden vermutlich nicht die geringsten Schwierigkeiten haben, sich in einer beliebigen, unbekannten App zurechtzufinden, solange diese neue App gewohnten, Betriebssystem-spezifischen UI-Standards folgt (UI ist übrigens die Abkürzung für User Interface, also Benutzeroberfläche). Dasselbe gilt natürlich auch für langjährige iOS-Nutzer.

Einfacher Zugriff auf die verbauten technischen Elemente eines Geräts – mit nativen Apps ist es besonders problemlos, alle Funktionen des Smartphones oder Tablets optimal zu nutzen, wie z.B. die Kamera, das Mikrofon, den Kalender, die Ortungsfunktion etc. Bei hybriden Apps muss man sich hingegen zumeist mit einem eingeschränkten Zugriff begnügen.

Die Zielgruppe – native Apps können von den Nutzern in den spezifischen App-Stores einfacher und schneller gefunden werden (da natürlich Apps mit einer besseren UX automatisch nach oben gepusht werden), wodurch Sie Ihre potenziellen Kunden besser erreichen werden können. Zudem werden Hybrid-Apps beim Einreichen in den Apple App-Stores nicht immer gerne gesehen.

Native Apps – die Nachteile:

Höhere Kosten – die Kosten für Wartung und Aufrechterhaltung mehrerer Apps mit verschiedenen Quell-Codes sind logischerweise höher, als wenn nur eine einzige Codebasis auf dem aktuellsten Stand bleiben muss.

Mehrere Entwickler – für gewöhnlich benötigt man für die Entwicklung von mehreren Apps für verschiedene Betriebssysteme auch mehrere Entwickler, da für beide konkreten Plattformen auch recht spezifisches Fachwissen vonnöten ist. Meist spezialisieren sich App-Entwickler daher nur auf eines der beiden Betriebssysteme.

Hybride Apps

Bei einer hybriden App handelt es sich um eine Web-Anwendung, die sich hinter einem Gehäuse versteckt, das zwar aussieht wie eine native App, in Wahrheit allerdings nur so tut. Hybride Apps sind immer plattformübergreifend und können sofort in den App-Stores verschiedener Betriebssysteme verbreitet werden, ohne dass extra spezifische Versionen für Android oder iOS entwickelt werden müssten. Die meisten hybriden Apps werden mithilfe von Webtechnologien entwickelt, die von vornherein mit mehreren Plattformen kompatibel sind (wie z.B. HTML5, CSS, Javascript etc.) und werden anschließend in native Apps umgemodelt, z.B. mit der Plattform Cordova.

Dank dieser spezifischen Voraussetzungen ist die Entwicklungszeit von hybriden Apps meist etwas kürzer, die Entwicklung gestaltet sich grundsätzlich einfacher und wann immer Sie eine bestehende App auch für ein anderes Betriebssystem anbieten wollen, müssen Sie nicht mehr bei null anfangen.

Allerdings sollte an dieser Stelle nicht unerwähnt bleiben, dass das neue Android-Berechtigungssystem (das mit Android 6.0 flächendeckend eingeführt wurde) auch im Falle von hybriden Apps automatisch zusätzliche Services durch den nativen Code vorsieht – was bedeutet, dass Sie entweder einen Entwickler brauchen werden, der auch Java beherrscht oder Sie holen einen „nativen Entwickler“ mit an Bord, der diese neuen Anforderungen übernimmt.

Werfen wir einen kurzen Blick auf die Vorteile der hybriden App-Entwicklung:

Niedrigere Kosten– die vergleichsweise niedrigeren Kosten, die bei der Entwicklung einer hybriden App entstehen, sind wohl der größte Vorteil dieser Lösung. Es ist nicht notwendig, zwei separate App-Versionen für Android und iOS zu entwickeln. Stattdessen reicht es völlig aus, eine einzige App zu entwickeln, die auf beiden Plattformen läuft (vorausgesetzt, es macht Ihnen nichts aus, dass es in Ihrer App keine Benutzeroberfläche geben wird, die so aussieht wie jene einer nativen App).

Niedrigere Anforderungen – eine einzige Programmiersprache kann auf allen existierenden Plattformen genutzt werden (falls Sie Cordova oder PhoneGap-Wrapper verwenden). Auch Xamarin könnte hier eine interessante Alternative darstellen. Damit sind Sie quasi für alle verschiedenen Plattformen gewappnet und Ihre Apps erhalten, zumindest bis zu einem gewissen Grad, einen nativen Look und ein natürliches Benutzergefühl – und das, obwohl in Wahrheit nur eine einzige Programmiersprache gebraucht wird, nämlich C#. Es ist nicht nötig, extra iOS- oder Android-spezifische Sprachen zu lernen (vorausgesetzt, Sie oder Ihre Entwickler sind versiert im Umgang mit PhoneGap oder Xamarin)

Hybride Apps – die Nachteile:

Verbesserungswürdige UX – Eine hybride App wird Ihren Kunden niemals eine native Nutzungserfahrung verschaffen können. Native Apps nutzen systemspezifische Interface-Komponenten, die den treuen Nutzern bestens bekannt und vertraut sind, wodurch eine sehr angenehme UX entsteht. Gleichzeitig erhalten die Entwickler durch diese gewohnten Komponenten die Möglichkeit, sinnvolle und anschauliche Übergänge und Transformationen zu schaffen, die dazu beitragen, dass der Work Flow niemals eingebremst wird.

Möchte man Ähnliches mit einer hybriden App bewerkstelligen, ist das leider nur möglich, wenn man bereit ist, die Performance der App zu opfern. Eine bessere Benutzererfahrung bedeutet realitätsnah, dass Nutzer Ihre App oft und gerne nutzen, Ihrer App gegenüber anderen Anbietern den Vorzug geben und Ihr Produkt weiterempfehlen – was schlussendlich die wichtigsten Voraussetzungen sind, damit Sie Ihre Nutzerbasis vergrößern können.

Denken Sie immer an Folgendes: Nutzer sind nur in den seltensten Fällen dazu bereit, einer App eine zweite Chance zu geben. Der erste Eindruck zählt auch in Sachen Technik und wenn Ihre App unter einer mittelmäßigen UX leidet, wirkt das auf potenzielle Kunden leider nur abschreckend.

Fehlende native Funktionen – sowohl Android, als auch iOS verfügen über einzigartige Funktionen, die nur den jeweils nativen Apps zur Verfügung stehen. Ein gutes Beispiel hierfür wäre RenderScript (Android), ein leistungsstarkes Berechnungsverfahren, das es möglich macht, Ihre App zu beschleunigen, wenn eine erhöhte Rechenleistung erforderlich wird (das kommt zum Beispiel oft in Foto-Wiedergabe- und Bearbeitungsprogrammen vor). Schwierigkeiten dieser Art, die hauptsächlich von der gewählten Programmiertechnologie verursacht werden, sind meist schwierig vorauszusehen und treten oft erst nach einer erheblichen Vorlaufzeit in Erscheinung. Im schlimmsten Fall kann Ihr gesamtes App-Projekt dadurch ins Wanken kommen.

Effizienz – Hybride Apps sind für gewöhnlich langsamer und weniger ausgeklügelt als ihre nativen Konkurrenten, daher endet der Versuch, besonders leistungsfressende Apps und mobile Spiele als hybride Apps zu konzipieren, meist in einer äußerst frustrierenden Erfahrung. So können beispielsweise rechenintensive Prozesse nicht auf einen Hintergrund-Thread ausgelagert werden.

Design – selbst, wenn das Design Ihrer App herausragend ist: Das native Anwendergefühl wird sich dennoch nicht einstellen, da Sie versuchen, eine einzige Version für zwei verschiedene Plattformen passend zu machen – was bedeutet, dass in beiden Fällen gravierende Abstriche gemacht werden müssen.   

App Store-Zulassungen – wenn das App-Geschäft noch völliges Neuland für Sie ist, sollten Sie sich auf ein paar unliebsame Überraschungen gefasst machen, denn die Einreichung der App im App Store ist oftmals ein steiniger Weg, der mit unzähligen Hürden gepflastert ist. Scheinbare Lappalien ohne tatsächliche Relevanz können zur Folge haben, dass Ihre App abgelehnt wird, wenn sie die strengen Geschäftsbedingungen des App Stores verletzen.

Was wiederum zur Folge hätte, dass sämtliche Ressourcen, die Sie bis dahin in die Entwicklung Ihrer Anwendung gesteckt haben, unwiederbringlich verloren sind. Wenn Sie nun dringend wissen möchten, welche Fehler Sie bei der App-Entwicklung besser vermeiden sollten, finden Sie hier alles Wissenswerte. Für einige herzhafte Lacher und vor allem ehrliche Verwunderung sollte hingegen dieses Best-Of der von Apple abgelehnten Apps sorgen. 

Nativ oder Hybrid?

Nach der bisherigen Lektüre sollten Sie bereits eine ziemlich konkrete Vorstellung von den jeweiligen Vor-und Nachteilen von nativen und hybriden Apps haben.

Aber was, wenn Sie jetzt immer noch unsicher sind, welche Entscheidung Sie treffen sollen? In diesem Fall sollten Sie Ihre Entscheidung von zwei äußerst kritischen Faktoren abhängig machen: Zeit und Geld – die üblichen Verdächtigen.

Mit der hybriden App werden Sie von beiden Ressourcen eine Menge sparen können – denn ein einziger Quellcode kann gleichzeitig als App im Google Play Store und im Apple Store angeboten werden. Außerdem wird die Entwicklungszeit dadurch wesentlich kürzer sein, was Entwicklerkosten spart. Wie Sie sich bereits denken können, ist das zu gut, um wahr zu sein – denn diese schnellere und kostengünstigere Lösung hat ihren Preis.

Im konkreten Fall lautet der Bereich, in dem Sie große Abstriche machen werden müssen, UX (also User Experience). Wie bereits besprochen, kann eine hybride App der nativen Variante in Sachen UX niemals das Wasser reichen.

Dieser Umstand sollte bei Ihrer Entscheidung der wichtigste Faktor sein. Allerdings gibt es noch andere, bislang nicht besprochene, Vor- und Nachteile, die wir der Übersichtlichkeit halber im Folgenden noch einmal kurz und knapp zusammengefasst haben:

Fazit:

Wenn Sie sich trotz der oben besprochenen Details immer noch den Kopf darüber zerbrechen, ob sich eine native oder hybride App besser für Ihre Zwecke eignen würde, sollten Sie unserer Meinung nach nicht nur Ihre aktuellen Bedürfnisse in Ihre Überlegungen miteinbeziehen, sondern auch Ihre zukünftigen Pläne. Konzentrieren wir uns zu Anschauungszwecken daher auf die zwei wahrscheinlichsten Szenarios:

1. Sie haben eine sehr einfache App, die Sie auch in der Zukunft vermutlich nicht um komplexe neue Funktionen erweitern werden müssen (z.B. eine App, mit der man Kinotickets buchen kann).

In diesem Fall, wenn zukünftige Funktionsupdates eher unwahrscheinlich sind, ist auch eine hybride App eine durchaus vernünftige Lösung.

2.  Sie möchten ein MVP entwickeln, haben aber bereits eine lange Liste mit zusätzliche Funktionen und Extras, die Sie in der Zukunft gerne hinzufügen möchten.

MVP bedeutet in diesem Fall Minimum Viable Product oder zu Deutsch, ein Produkt mit den minimalen Anforderungen und Eigenschaften. In diesem Fall, wenn es sehr wahrscheinlich ist, dass Ihre App basierend auf dem Feedback Ihrer Early Adopters um neue Funktionen erweitert werden wird, ist eine native App das Mittel der Wahl.

Wie Sie sehen, können beide Varianten, abhängig von der konkreten Situation und Ihren individuellen Umständen, eine gute Wahl sein. Allerdings sind wir bei buzzwoo der Meinung, dass native Apps im Zweifelsfall immer die bessere Alternative sind – vor allem, weil Sie einen erheblich größeren Gestaltungsspielraum haben, was die App-Entwicklung nach der MVP-Phase betrifft.

Nicht umsonst lassen sich unzählige Geschichten von weltweit agierenden Firmen finden, die im Laufe ihrer Firmengeschichte hybriden Apps den Rücken gekehrt und stattdessen auf native Apps umgestiegen sind, allen voran der Global Player Facebook.

Lassen sich beide Ansätze auch mischen?

Wie Sie gesehen haben, gibt es viele Argumente für und gegen beide Lösungsansätze. Aus diesem Grund haben wir uns in letzter Zeit auch gerne mal für eine Zwischenlösung entschieden, die wir gerne Wrapper-App nennen.

Bei diesem Ansatz wird die App nativ programmiert. Das Verhalten der Anwendung entspricht somit den hohen Erwartungen des Nutzers. Um alle Vorteile der nativen Entwicklung nutzen zu können, wird der gesamte Grundaufbau in der jeweiligen nativen Programmiersprache entwickelt. Im Anschluss wird jeder einzelne Screen bewertet. Lassen sich die Inhalte mittels HTML abbilden?

Welche Interaktionsmöglichkeiten sind mit diesem Screen verknüpft, usw. Nach Auswertung aller Argumente können dann viele Inhalte mit HTML programmiert und als WebView integriert werden. Somit versucht man sich das Beste aus beiden Welten zu bewahren, da die HTML-Inhalte natürlich sowohl für Android als auch für iOS global angelegt werden.

Zu guter Letzt hoffen wir sehr, dass Ihnen dieser Artikel die Entscheidungsfindung erleichtern konnte. Wenn auch Sie sich gerade mitten im „nativ vs. hybrid-Dilemma“ befinden und scheinbar zu keiner Lösung kommen, würden wir uns freuen, wenn Sie uns über das Kontaktformular eine Nachricht hinterlassen. Gerne stehen wir Ihnen bei Ihrem App-Projekt mit Rat und Tat zur Seite!

Haben Sie Fragen oder benötigen eine individuelle Beratung zu dem, was Sie gerade gelesen haben? Zögern Sie nicht, uns zu kontaktieren! Besuchen Sie unsere Kontaktseite und lassen Sie uns ein Gespräch darüber beginnen, wie wir Ihnen helfen können, Ihre Ziele zu erreichen.

Jens

Jetzt Beratungsgespräch vereinbaren:

Jens Brater

Geschäftsführung

+49 711 217258 45

Email schreiben