Rheinwerk Computing < openbook >

 
Inhaltsverzeichnis
Vorwort
Teil I Grundlagen
1 Android – eine offene, mobile Plattform
2 Hallo Android!
3 Von der Idee zur Veröffentlichung
Teil II Elementare Anwendungsbausteine
4 Wichtige Grundbausteine von Apps
5 Benutzeroberflächen
6 Multitasking
Teil III Gerätefunktionen nutzen
7 Telefonieren und surfen
8 Sensoren, GPS und Bluetooth
Teil IV Dateien und Datenbanken
9 Dateien lesen, schreiben und drucken
10 Datenbanken
Teil V Multimedia und Produktivität
11 Multimedia
12 Kontakte und Organizer
A Einführung in Kotlin
B Jetpack Compose
C Häufig benötigte Codebausteine
D Literaturverzeichnis
E Die Begleitmaterialien
Stichwortverzeichnis

Ihre Meinung?
Spacer
<< zurück
Android 11 von Thomas Künneth
Das Praxisbuch für App-Entwickler
Buch: Android 11

Android 11
Pfeil 3 Von der Idee zur Veröffentlichung
Pfeil 3.1 Konzept und Realisierung
Pfeil 3.1.1 Konzeption
Pfeil 3.1.2 Fachlogik
Pfeil 3.1.3 Benutzeroberfläche
Pfeil 3.2 Vom Programm zum Produkt
Pfeil 3.2.1 Protokollierung
Pfeil 3.2.2 Fehler suchen und finden
Pfeil 3.2.3 Debuggen auf echter Hardware
Pfeil 3.3 Anwendungen verteilen
Pfeil 3.3.1 Die App vorbereiten
Pfeil 3.3.2 Apps in Google Play einstellen
Pfeil 3.3.3 Alternative Märkte und Ad-hoc-Verteilung
Pfeil 3.4 Zusammenfassung
 
Zum Seitenanfang

3.3    Anwendungen verteilen Zur vorigen ÜberschriftZur nächsten Überschrift

Wenn Sie die eigentliche Entwicklung Ihres Programms abgeschlossen haben und die App alle Tests erfolgreich durchlaufen hat, können Sie die Veröffentlichung bzw. Verteilung vorbereiten.

 
Zum Seitenanfang

3.3.1    Die App vorbereiten Zur vorigen ÜberschriftZur nächsten Überschrift

Jede App hat ein Icon, das in Google Play neben dem Programm- und Herstellernamen angezeigt wird. Nach dem Herunterladen und Installieren tippt der Nutzer auf dieses Symbol, um die Anwendung zu starten. Das Icon ist also Ihre Visitenkarte. Entsprechend viel Aufwand sollten Sie in seine Gestaltung investieren. Das mag zunächst übertrieben wirken, aber die Kommentare in Google Play enthalten unzählige Beschwerden über unästhetische Grafik.

Das Asset Studio

Abbildung 3.11    Das Asset Studio

Als Erstes erstellen Sie Ihr Logo, am besten mit einem Vektorzeichenprogramm wie dem freien Inkscape. Das hat den Vorteil, dass Sie es jederzeit in Bitmaps beliebiger Größe und Pixeldichte konvertieren können. Android kennt zwar Vektorgrafiken, allerdings keine .svg-Dateien (Scalable Vector Graphics), sondern ein eigenes, Vector Drawable genanntes Format (.xml). Immerhin können Sie Android Studio für die Umwandlung verwenden. Klicken Sie hierzu im Werkzeugfenster Project den Knoten res mit der rechten Maustaste an, und wählen Sie dann New • Vector Asset. Daraufhin öffnet sich das in Abbildung 3.11 dargestellte Fenster Asset Studio. Markieren Sie Local file (SVG, PSD). Jetzt können Sie mit dem Ordner-Symbol (inline image) eine .psd- oder .svg-Datei importieren. Nach dem Schließen des Assistenten mit Finish finden Sie die konvertierte Datei unter res\drawable.

[»]  Hinweis

Leider kann Android Studio .svg-Dateien manchmal nur unvollständig oder überhaupt nicht importieren. In so einem Fall enthält die Grafik nicht unterstützte Elemente. Zum Glück finden sich im Internet viele Tools für die Umwandlung, sowohl online als auch zum Herunterladen.

Um ein Vector Drawable als App-Icon verwenden zu können, sind noch ein paar Eingaben erforderlich. Diese sehen wir uns nun an. Mit Android 8.0 hat Google adaptive Launcher-Symbole eingeführt. Die Idee war, auf unterschiedlichen Gerätemodellen verschiedene Formen (zum Beispiel Kreise oder abgerundete Quadrate) anzeigen zu können.

Um Ihrem Projekt ein solches Icon hinzuzufügen, klicken Sie im Werkzeugfenster Project den Knoten res mit der rechten Maustaste an und wählen dann New • Image Asset. Daraufhin öffnet sich das in Abbildung 3.12 dargestellte Fenster.

Ein App-Icon erstellen

Abbildung 3.12    Ein App-Icon erstellen

Mit Icon Type legen Sie die Art des zu erstellenden Icons fest. Um moderne und ältere Geräte zu unterstützen, sollten Sie Launcher Icons (Adaptive and Legacy) auswählen. Adaptive Icons bestehen aus Vorder- und Hintergrundebenen. Sie werden auf den Registerkarten Foreground Layer und Background Layer konfiguriert. Unter Options können Sie das Erstellen von Icons für ältere Geräte sowie den Play Store beeinflussen. Deaktivieren Sie hier eine Icon-Art (beispielsweise Google Play Store Icon), erscheint sie (natürlich) nicht mehr in der Vorschau. Geben Sie bei name den Bezeichner an, mit dem Sie die Grafik in der Manifestdatei, die ich gleich erklären werde, ansprechen möchten, zum Beispiel »ic_mein_logo«. Next bringt Sie auf die zweite Seite des Assistenten; hier sehen Sie, welche Artefakte generiert und wo diese gespeichert werden. Mit Finish beenden Sie den Assistenten.

Der Name des Programmstarter-Icons ohne Dateiendung wird als Wert des Attributs android:icon in die Manifestdatei (AndroidManifest.xml) eingetragen. android:icon="@mipmap/ic_mein_logo" repräsentiert somit alle Dateien, die mit dem Asset Studio generiert wurden, wenn Sie im Feld Name »ic_mein_logo« eingegeben haben. Das runde Icon setzen Sie mit android:roundIcon=.

Damit sich Kunden über Ihr Programm informieren können, sollten Sie den Aufbau einer kleinen Seite im Internet in Erwägung ziehen. Entsprechende Hosting-Angebote kosten nur wenig Geld. Neben der Möglichkeit, Werbung für Ihr Produkt zu machen, ist dies der ideale Ort für Frequently Asked Questions sowie Tipps und Tricks. Die Google Play Console, die ich Ihnen später vorstelle, sieht die Eingabe von Kontaktdaten wie Website und E-Mail-Adresse ohnehin vor. Jetzt haben Sie fast alle Stationen auf dem Weg zum fertigen Produkt absolviert. Sie müssen Ihr Programm nur noch digital signieren und als sogenanntes Application Package (APK) exportieren.

Hierbei handelt es sich um eine komprimierte Installationsdatei, die alle Bestandteile einer App, also Klassen, Ressourcen sowie sonstige Artefakte, bündelt. Sie hat die Endung .apk. Sobald Sie eine Anwendung aus der IDE heraus starten, generiert Android Studio automatisch ein solches Archiv und signiert es mit einem speziellen Entwicklerzertifikat. Hierfür werden Tools des Android SDK sowie des JDK benötigt. All das ist für Sie als Programmierer völlig transparent und läuft, wie Sie bereits gesehen haben, ohne weiteres Zutun ab. Um ein verteilbares Archiv zu erzeugen, klicken Sie in der Menüleiste auf Build • Generate Signed Bundle / APK. Sie sehen daraufhin den in Abbildung 3.13 dargestellten gleichnamigen Dialog.

Dieser bewirbt ein alternatives Veröffentlichungsformat, das Android App Bundle genannt wird. Solche Dateien können und sollen nicht direkt auf Android-Geräten installiert werden. Sie dienen vielmehr als Beschreibung und Artefakt-Speicher für Stores, die bei einer konkreten Download-Anfrage ein speziell konfektioniertes APK generieren und bereitstellen. Sofern Sie Ihre App ausschließlich über Google Play vertreiben möchten, sollten Sie deshalb auf dieses Format setzen.

In beiden Fällen müssen Sie auf der Folgeseite (Abbildung 3.14) des Assistenten bei Key store path den Pfad zu einem bereits vorhandenen Schlüsselbund angeben oder durch Klicken auf Create new einen solchen erzeugen. Im dann erscheinenden Dialog New Key Store tragen Sie bei Key store path den gewünschten absoluten Dateinamen (einschließlich Pfad) ein, beispielsweise C:\Users\tkuen\OneDrive\Dokumente\Android-Keyring.

Der Dialog »Generate Signed Bundle or APK«

Abbildung 3.13    Der Dialog »Generate Signed Bundle or APK«

Den zu verwendenden Schlüsselbund auswählen (Android App Bundle)

Abbildung 3.14    Den zu verwendenden Schlüsselbund auswählen (Android App Bundle)

Vergeben Sie anschließend ein Passwort, um den Zugriff auf den Keystore abzusichern. Des Weiteren müssen Sie einige Daten zu dem Schlüssel eintragen, mit dem Ihre App später signiert werden soll. Hierzu gehören ein weiteres Passwort, die Gültigkeitsdauer in Jahren sowie einige Angaben zu Ihnen oder Ihrer Firma. Bitte achten Sie darauf, dass Ihr Schlüsselbund mindestens 25 Jahre gültig ist[ 4 ](https://developer.android.com/studio/publish/app-signing). Nachdem Sie auf OK geklickt haben, werden der Pfad zu dem Schlüsselbund, der Key alias sowie die beiden Passwörter in den Dialog Generate Signed Bundle or APK übernommen. Hatten Sie stattdessen Choose existing angeklickt, müssen Sie die Werte selbst eintragen.

Den zu verwendenden Schlüsselbund auswählen (APK)

Abbildung 3.15    Den zu verwendenden Schlüsselbund auswählen (APK)

Wenn Sie ein Android App Bundle erstellen, sollten Sie auf jeden Fall ein Häkchen vor Export encrypted key ... setzen und in der Zeile darunter den Exportpfad einstellen. Dieser Schlüssel ist für den späteren Upload unerlässlich. Sie dürfen ihn nicht verlieren. Beim Erstellen eines APK ist beides nicht sichtbar. In diesem Fall entspricht die Seite des Assistenten Abbildung 3.15. Mit Next gelangen Sie auf die letzte Seite des Assistenten. Sie ist in Abbildung 3.16 (bei App Bundles) bzw. Abbildung 3.17 (APK) zu sehen.

Build-Variante auswählen (Android App Bundle)

Abbildung 3.16    Build-Variante auswählen (Android App Bundle)

Build-Variante auswählen (APK)

Abbildung 3.17    Build-Variante auswählen (APK)

Sie können das Verzeichnis auswählen, in dem das Application Package bzw. das Android App Bundle abgelegt werden soll. Als Build Type lassen Sie release eingestellt. Achten Sie beim Erstellen eines APK darauf, dass mindestens V1 (Jar Signature) mit einem Häkchen versehen wurde. V2 (Full APK Signature) wurde mit Android 7.0 eingeführt. Als Vorteile werden schnellere Installationszeiten sowie ein besserer Schutz gegen Manipulationen an der Installationsdatei aufgeführt. Falls es beim Hochladen eines auf diese Weise signierten APKs zu Fehlermeldungen kommt, nutzen Sie bitte V1 (Jar Signature). Finish schließt den Vorgang ab.

[»]  Hinweis

Es ist sehr wichtig, Keystore und Schlüssel sicher zu verwahren und die darin enthaltenen Passwörter nicht preiszugeben. Andernfalls könnten Dritte Apps in Ihrem Namen verbreiten.

 
Zum Seitenanfang

3.3.2    Apps in Google Play einstellen Zur vorigen ÜberschriftZur nächsten Überschrift

Die von Google favorisierte Distributionsform von Apps ist die Verteilung über Google Play. Auf den meisten Android-Smartphones ist eine entsprechende Anwendung (Play Store) vorinstalliert. Sie erlaubt das Auswählen, Herunterladen und gegebenenfalls Bezahlen von Programmen. Gleich nach der Registrierung unter https://play.google.com/apps/publish, für die eine einmalige Gebühr von derzeit 25 US$ zu entrichten ist, können Sie in der Google Play Console (Abbildung 3.18) Apps einstellen. In ihr geben Sie die Beschreibung ein, die der Besucher beim Stöbern im Anwendungskatalog sieht. Sie können Bildschirmfotos und Videoclips hinterlegen, gegebenenfalls den Preis Ihres Programms ändern und Neuerungen gegenüber der letzten Version erfassen.

Regelmäßige Aktualisierungen gehören übrigens zum guten Ton. Natürlich sollten Sie Ihre Nutzer nicht jedem zweiten Tag eine neue Version vor die Nase setzen. Aber zügige Fehlerbeseitigungen sind Pflicht. Und sinnvolle Erweiterungen freuen sicher auch viele Anwender. Ganz wichtig ist aber, bei Verfügbarkeit einer neuen Android-Version genau zu prüfen, ob sich Ihre App in allen Belangen noch wie gewünscht verhält. Außerdem aktualisiert Google gelegentlich die Anforderungen an die targetSdkVersion bei neuen Apps sowie App-Updates. Informationen hierzu finden Sie auf der Seite https://support.google.com/googleplay/android-developer/answer/113469#targetsdk.

Die Google Play Console

Abbildung 3.18    Die Google Play Console

Der Verkauf von Programmen kann im Idealfall zu erklecklichen Einnahmen führen. Leider bleiben aber auch unzählige exzellente Apps weitgehend unbeachtet. Im Hinblick auf immer wieder auftauchende Geschichten à la »Vom Tellerwäscher zum Millionär« möchte ich Ihnen deshalb ans Herz legen, mit nicht zu hohen Erwartungen ins Rennen zu gehen. Ob und wie gut sich eine Anwendung verkauft, ist von vielen Faktoren abhängig, die sich nur schwer kalkulieren lassen. Bitte prüfen Sie aber dennoch, wie Sie in steuerlicher oder abgabetechnischer Hinsicht mit solchen Einnahmen umzugehen haben.

[+]  Tipp

Sofern Sie für Ihre App eine eigene Website betreiben, sollten Sie überlegen, wie Sie diese für Suchmaschinen optimieren können. Das Internet bietet reichlich Tipps und Tricks zu diesem Thema. Eine weitere Möglichkeit ist, gezielt Werbung für die App zu schalten, was freilich mit Kosten verbunden ist.

Ein letzter, wichtiger Punkt: Die Nutzung vieler Funktionen (beispielsweise SMS senden, auf Peripherie zugreifen oder eine Nummer ohne Benutzerinteraktion wählen) muss in Form von Berechtigungen angefordert werden. Vor Android 6 wurden diese während der Installation eines Programms angezeigt, sodass der Nutzer im Vorfeld schon sah, was eine App tun möchte. Allerdings konnte der Anwender nicht gezielt Berechtigungen erteilen oder verwehren, es gab nur »ganz oder gar nicht«. Mittlerweile können Berechtigungen zur Laufzeit angefragt werden. Wie das funktioniert, erfahren Sie in Kapitel 4, »Wichtige Grundbausteine von Apps«.

Prüfen Sie auf jeden Fall sorgfältig, welche Berechtigungen Ihre App benötigt. Die Anwender reagieren mit harscher Kritik, wenn sich ein Programm ihrer Meinung nach zu viele oder nicht gerechtfertigte Zugriffsmöglichkeiten einräumen möchte, ganz egal, ob das zur Installations- oder zur Laufzeit geschieht.

Warum Google Play nicht die einzige Vertriebsplattform für Ihre Software ist und wie Sie sich zusätzliche Einnahmequellen erschließen können, beschreibe ich im folgenden Abschnitt.

 
Zum Seitenanfang

3.3.3    Alternative Märkte und Ad-hoc-Verteilung Zur vorigen ÜberschriftZur nächsten Überschrift

Android steht als offene Plattform jedem Gerätehersteller zur Verfügung. Allerdings sind nicht alle Komponenten Bestandteil des Open-Source-Pakets. Deren Bereitstellung knüpft der Suchmaschinenprimus an bestimmte Bedingungen, die kleinere Hersteller möglicherweise nicht erfüllen. Aber auch gesetzliche Auflagen können Anbieter von wichtigen Teilen des Android-Stapels abschneiden. Beispielsweise darf das chinesische Unternehmen HUAWEI die Google Play Services nicht nutzen. Somit steht Google Play auf dessen Geräten nicht zur Verfügung.

Hersteller hatten schon früher aus der Not eine Tugend gemacht und alternative Softwareportale inklusive App für das mobile Gerät geschaffen. Auch Netzwerkbetreiber erhofften sich in solchen »Läden« eine lukrative Einnahmequelle. In diesem Zusammenhang hat sich der Begriff Secondary Market etabliert. Er fasst alle Angebote jenseits des Google-Pendants zusammen. Grundsätzlich wären solche alternativen Programmkataloge für Sie als Entwickler als zusätzliche Vertriebsplattform für Ihr Produkt interessant. Allerdings dürfte Ihnen ab einer bestimmten Anzahl zu beliefernder Stores ein logistisches Problem drohen – mit jeder neuen Programmversion müssten Sie Ihr Angebot in jedem einzelnen App Store aktualisieren. Langfristig als Alternative zu Google Play etablieren konnte sich nur Amazons App Store. Informationen zu Amazons Angeboten für Entwickler finden Sie unter https://developer.amazon.com/de/apps-and-games.

Wenn Sie wie weiter oben beschrieben eine Internetpräsenz für Ihre App aufgesetzt haben, kann die signierte Installationsdatei auch dort bereitgestellt und unmittelbar im Browser des Smartphones heruntergeladen werden. Das geht ganz einfach mithilfe des üblichen <a href="">...</a>. Allerdings müssen Nutzer dies unter Apps und Benachrichtigungen • Spezieller App-Zugriff • Installieren unbekannter Apps freigeschaltet haben.

Auch unter Android Studio ist die Installation fremder Anwendungen möglich. Schließen Sie hierzu das Gerät mit dem USB-Kabel an Ihren Rechner an, und öffnen Sie das Werkzeugfenster Terminal. Geben Sie einfach folgendes Kommando ein:

adb install <Installationsdatei>

 


Ihre Meinung?

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de

<< zurück
Zur Rheinwerk-Konferenz für Kotlin
 Buchempfehlungen
Zum Rheinwerk-Shop: Kotlin

Kotlin


Zum Rheinwerk-Shop: Praxisbuch Usability und UX

Praxisbuch Usability und UX


Zum Rheinwerk-Shop: Flutter und Dart

Flutter und Dart


Zum Rheinwerk-Shop: App-Design

App-Design


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und in die Schweiz
InfoInfo

 
 


Copyright © Rheinwerk Verlag GmbH 2023
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

 
[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern