Was die Entwicklung von Apps angeht, sind wir in den USA etwas faul geworden. Für uns ist es kein Drawback, eine gesunde Dosis Distant-Content material-Downloads für unsere Spiele, cell Werbenetzwerke für unsere Vollbildvideos, Analysen zur Verfolgung der Benutzeraktivitäten und anderen Fats-Pipe-Code hineinzustopfen, der im Gigabit-Land intestine funktioniert Verbindungen.
Aber wussten Sie, dass in quick der Hälfte der afrikanischen Länder in den letzten fünf Jahren das Web abgeschaltet wurde und nur 24 % der Menschen in Afrika überhaupt das Web nutzen? Darüber hinaus leben immer noch etwa 1,6 Milliarden Menschen an Orten, an denen cell Breitbandnetze (3G und 4G) nicht einmal verfügbar sind. Sie müssen den entfernten WLAN-Hotspot aufspüren, um überhaupt in den App Retailer zu gelangen.
Vor diesem Hintergrund kann es für App-Entwickler eine Herausforderung sein, gezielt Märkte zu bedienen, in denen es kaum Internetverbindungen gibt. Sie müssen darüber nachdenken, wie sie ihre App „datenschonend“ machen, sich aber dennoch für Nutzer mit niedrigen Internetgeschwindigkeiten und intermittierenden Verbindungen lohnen.
Der 20-jährige nigerianische Technik-Wunderkind Elvis Chidera ist Ingenieur bei Careem. Schon in jungen Jahren hat er mehrere Apps entwickelt, um gezielt afrikanische Märkte zu bedienen. Er brachte sich selbst das Programmieren auf einem Nokia 2690 bei und arbeitete mit einem vom MIT unterstützten Startup Dot Be taught zusammen. Wir haben kürzlich mit Elvis über einige der Herausforderungen gesprochen, die die Entwicklung von Knowledge-Gentle-Apps für Benutzer mit geringer Internetgeschwindigkeit, aber hohen Erwartungen mit sich bringt.
ADM: In welchen Fällen sollten Entwickler darüber nachdenken, ihre App world, dh außerhalb von Entwicklungsmärkten, datenschonend zu gestalten?
Die Realität ist, dass Knowledge-Gentle-Apps zu einem deutlich besseren Erlebnis führen können – selbst in entwickelten Märkten. Da Ihre App weniger Daten verbraucht, ist sie bei einer guten Internetverbindung blitzschnell.
Manchmal ist die Internetverbindung selbst in entwickelten Regionen begrenzt und Sie möchten nicht, dass Ihre Benutzer in diesem Fall gesperrt werden.
ADM: Welchen Ansatz würden Sie Entwicklern empfehlen, wenn sie mit der Entwicklung einer Knowledge-Gentle-App beginnen?
Wenn Sie gerade an einer neuen App arbeiten, sollten Sie beim Erstellen der App die Datengröße aktiv berücksichtigen. Sie sollten Fragen stellen wie: Müssen wir das 8 MB große Begrüßungsbildschirmvideo wirklich in den App-Construct einfügen?
Wenn Sie aktiv über die Datengröße nachdenken, werden Sie am Ende Entscheidungen treffen, die die App nicht unnötig aufblähen. Anstatt beispielsweise das umfangreiche Begrüßungsbildschirmvideo in den App-Construct einzufügen, können Sie das Video bei Bedarf nur dann herunterladen, wenn Sie feststellen, dass der Benutzer über eine schnelle Internetverbindung verfügt. Für Benutzer mit einer langsamen Verbindung ist es wahrscheinlich wichtiger, auf die Kernfunktionen Ihrer App zuzugreifen, als auf das schicke Video.
Wenn Sie über eine bestehende App verfügen, können Sie eines von zwei Dingen tun:
1. Erstellen Sie eine Gentle-Model Ihrer ursprünglichen App: Ich empfehle diesen Ansatz nicht, da zusätzliche Wartungskosten anfallen. Sie müssen zwei Apps verwalten, was schwierig wäre, wenn Sie für ein kleines Unternehmen arbeiten.
2. Optimieren Sie die Unique-App: Dies ist mein empfohlener Ansatz, da normalerweise kein langfristiger Overhead entsteht.
Unabhängig davon, ob Sie eine Gentle-Model erstellen oder die Unique-App optimieren möchten, sind die Prozesse ähnlich. Sie sollten zunächst mit der Profilierung der App beginnen, um festzustellen, welche Komponenten die größten sind und was für den schnellsten Gewinn für Ihr Crew sorgt.
Normalerweise muss das gesamte Crew, einschließlich der Nicht-Entwickler, in die Bemühungen einbezogen werden, da die Erstellung einer Knowledge-Gentle-App bedeuten kann, dass man sich mit einem Bild mit niedrigerer Auflösung zufrieden geben oder eine große Funktion weitgehend streichen muss.
ADM: Gibt es bestimmte Instruments, Integrationen oder Programmiersprachen, die Sie empfehlen würden und die dabei helfen würden?
Das Gute daran ist, dass die meisten Instruments, die Sie benötigen, kostenlos und/oder Open Supply sind. Zwei wichtige Werkzeuge sind:
1. Bildkomprimierungstools wie TinyPNG. Es gibt hunderte andere Bildkomprimierungstools, die Sie problemlos verwenden können.
2. Ein Device wie Proguard (Android-spezifisch) zur Optimierung und Minimierung Ihrer Codebasis.
Sie können Ihre App-Ressourcen nach Gerätefunktionen aufteilen und sie separat in verschiedenen App-Builds verteilen. Auf Android lässt sich dies ganz einfach über App Bundles oder ABI-Splits erreichen.
Außerdem können Sie ein Lint-Device verwenden, um Ihr Projekt zu analysieren und ungenutzten Code oder Ressourcen zu erkennen. Sie werden überrascht sein, wie viele Daten Sie mit diesem einfachen Vorgang sparen können.
Die oben genannten Instruments dienen lediglich der Verkleinerung der App. Beim Aufbau eines Knowledge-Gentle geht es jedoch nicht nur um die Erfahrung vor der Set up. Ebenso wichtig ist die Erfahrung nach der Set up; Ihre App sollte nicht datenhungrig sein.
Alle Daten, die zwischen der App und Ihrem Backend ausgetauscht werden, müssen stark komprimiert werden. Beispielsweise verwendet das Crew von Fb die LZMA2-Komprimierung für ihre Fb-Lite-App aufgrund der Komprimierungsrate und der geringen Ressourcennutzung auf dem Gerät beim Dekomprimieren.
Einige Verarbeitungsvorgänge, beispielsweise die Größenänderung von Bildern, sollten auf den Server verlagert werden. Es ist nicht erforderlich, ein 5000 x 5000 Pixel großes Bild an ein Gerät mit einer sehr niedrigen Auflösung zu senden. Stattdessen sollten Sie die Größe der Bilder basierend auf dem Benutzergerät ändern. Dies spart dem Benutzer sowohl Geld als auch Batterie.
ADM: Was sind Ihrer Meinung nach die größten Herausforderungen bei der Entwicklung von Apps, die ohne Web funktionieren oder nur langsame Verbindungen erfordern?
Ich denke, es ist oft eine Herausforderung, sich daran zu gewöhnen, „nicht mehr“ zu sagen. Sie bekommen so viele tolle Ideen, um die App aufzublähen, aber Sie können den Großteil davon nicht hinzufügen, weil Sie durch die Datengröße eingeschränkt sind.
EF Schumacher zitiert: „Jeder intelligente Narr kann die Dinge größer, komplexer und gewalttätiger machen.“ Es braucht einen Hauch von Genialität – und viel Mut, um in die entgegengesetzte Richtung zu gehen.“
Außerdem sind Groups möglicherweise nicht motiviert, so hart wie möglich zu arbeiten. Oft wissen sie einfach nicht, welche Auswirkungen ihr App-Knowledge-Gentle haben wird, weil sie in einem völlig anderen Markt tätig sind. Daher ist es hilfreich, die Statistiken zu teilen und dem Crew zu helfen, zu verstehen, warum ihre Arbeit wichtig ist.
ADM: Was sind Ihrer Meinung nach die Haupteinschränkungen, die sich auf die Leistungsfähigkeit einer Knowledge-Gentle-App auswirken?
Normalerweise verfügen Knowledge-Gentle-Apps nicht über den ganzen Schnickschnack, der in einer regulären App verfügbar ist. Viele sind beispielsweise nicht mit wunderschön gestalteten Animationen oder hochauflösenden Bildern ausgestattet. Diese sollen den Benutzer erfreuen und sind in einer Knowledge-Gentle-App normalerweise nicht verfügbar.
Es gibt Möglichkeiten, dies zu kompensieren. Sie können beispielsweise einen einfachen Satz von Animationen verwenden und wiederverwenden oder Benutzern die Funktionalität bieten, Bilder in voller Auflösung zu laden.
ADM: Gibt es Branchen, die Ihrer Meinung nach besonders darüber nachdenken sollten, ihre Apps datenschonend zu gestalten? Warum?
Ich denke, jedes Unternehmen kann wirklich von einer Knowledge-Gentle-App profitieren. Eingeschränkt zu sein ist ein Segen und zwingt Sie dazu, sich nur auf die wichtigen Funktionen zu konzentrieren.
Eine Kategorie von Apps, die möglicherweise ausgenommen sind, sind Apps, die für Energy-Consumer entwickelt wurden, wie Entwicklertools, hochauflösende Spiele usw.
Elvis Chidera ist Ingenieur bei Careem
Werden Sie Abonnent des App Developer Journal für nur 5,99 $ professional Monat und profitieren Sie von all diesen Vorteilen.