Скачать книгу

wird ein Dialogfeld angezeigt, das den Anwender darüber informiert, dass die App nicht mehr reagiert (siehe Abbildung 1.2). Dann kann der Anwender entscheiden, ob er die App schließen oder auf ihre Wiederherstellung warten will. Größtenteils klicken die Benutzer auf OK und schließen Ihre App.

Abbildung 1.2: Hier wird gemeldet, dass eine App nicht mehr reagiert.

      Icon_Tipp.jpgAm besten betten Sie CPU-lastigen oder länger laufenden Code in einen anderen Thread ein. Die Vorgehensweise wird auf der Seite Keeping Your App Responsive auf der Website für Android-Entwickler unter http://d.android.com/guide/practices/design/responsiveness.html beschrieben.

      Hintergrunddienste

      Sie wissen möglicherweise, was ein Dienst (Service) ist, nämlich eine im Hintergrund laufende Anwendung, die nicht notwendigerweise eine Benutzeroberfläche besitzen muss. Klassische Beispiele sind die üblicherweise als Hintergrunddienst laufenden Antivirenprogramme. Auch wenn sie auf dem Bildschirm unsichtbar bleiben, wissen Sie doch, dass sie laufen.

      Auch Android-Apps können Hintergrunddienste verwenden. Die meisten als Download im Google Play Store erhältlichen Audioplayer können Sie als Hintergrunddienst laufen lassen. Auf diese Weise können Sie beim Abruf Ihrer E-Mails oder der Erledigung anderer Aufgaben, für die der Bildschirm benötigt wird, weiter Musik hören.

      Android Support Library

      Natürlich macht es am meisten Spaß, Apps für die neuesten und leistungsstärksten Geräte zu entwickeln! Es kommt jedoch auch immer wieder vor, dass Sie ältere Geräte unterstützen müssen. Schließlich verwenden nicht alle Ihre Anwender garantiert immer die allerneueste Version von Android.

      Glücklicherweise bietet Android aber auch hier eine Lösung. Sie können nämlich die Android Support Library benutzen, um Ihre Apps mit allen Geräten bis zurück in die Android-Steinzeit (etwa 2010 nach Christus) kompatibel zu machen.

      Diese Hilfsbibliotheken unterstützen nicht nur Fragmente und Loader, sondern erweitern die alten Geräte auch um einige neuere APIs wie:

      ✔ RecyclerView: Erzeugt eine endlos blätterbare View-Liste.

      ✔ CardView: Eine »Karte«, die Sie mit einer RecyclerView nutzen können, um eine blätterbare Liste mit Karten in Ihren Apps zu erstellen.

      ✔ ViewPager: Seiten nach links und rechts wischen.

      ✔ ShareCompat: Zum Teilen aller möglichen Dinge mit Freunden.

      Icon_Tipp.jpgEine vollständige Liste der Funktionen der Android Support Library finden Sie unter https://developer.android.com/tools/support-library/features.html. Unter https://developer.android.com/about/dashboards erfahren Sie, wie viele Android-Benutzer welche Android-Versionen verwenden.

      Aktionsleiste

In der Aktionsleiste bringen Sie zahlreiche Schaltflächen und Menüs unter, die den Anwendern gestatten, mit Ihrer App zu interagieren. Die Aktionsleiste wird fast immer oben quer über den Bildschirm angezeigt – man kann sie also kaum übersehen. Abbildung 1.3 zeigt ein Beispiel für die Aktionsleiste der YouTube-App.

Abbildung 1.3: Die YouTube-Aktionsleiste für ein Android-Demovideo

      Beachten Sie diese Elemente in der Aktionsleiste:

      ✔ Aufwärts-Schaltfläche, App-Logo: Tippen Sie das App-Logo in der Aktionsleiste an, um eine Ebene aufwärtszugehen.

      Icon_Hand.jpgBeachten Sie den feinen Unterschied zwischen der Aufwärts- und der Zurück-Schaltfläche. Über die Zurück-Schaltfläche kehrt der Benutzer zur vorherigen Aktivität zurück, wobei die benutzte App keine Rolle spielt. Die Aufwärts-Schaltfläche bringt den Benutzer hingegen zurück zur letzten Aktivität in der aktuellen Anwendung, selbst wenn es sich bei dieser nicht um die Aktivität handelt, die er zuletzt genutzt hat.

      Angenommen, Sie betrachten eine Webseite im Chrome-Browser und tippen einen Link an, um die YouTube-App zu starten. Wenn Sie dann die Zurück-Schaltfläche antippen, kehren Sie damit zu Chrome zurück. Über die Aufwärts-Schaltfläche gelangen Sie hingegen zur Startseite der YouTube-App.

      ✔ Seitentitel: Neben dem Symbol der Anwendung wird der Titel der aktuellen Seite in der Aktionsleiste angezeigt. Wenn sich auf der aktuellen Seite Ihrer App die Daten irgendwie filtern lassen, können Sie dort ein Dropdown-Menü einfügen, über das sich der Filter wechseln lässt.

Aktion: Am rechten Ende der Aktionsleiste können Sie verschiedene Aktionen sehen, die Benutzer ausführen können. In der YouTube-App in Abbildung 1.4 können Benutzer Videos zu einer Liste hinzufügen, sie weiterempfehlen oder nach weiteren Videos suchen. Für die Aktionsschaltflächen können Texte und/oder Symbole angezeigt werden. Sie können beliebig viele Aktionen hinzufügen. Aktionen, für die der Platz auf dem Bildschirm nicht mehr ausreicht, werden ganz rechts in ein Untermenü ausgelagert.

      ✔ Kontext-Aktionsleiste (nicht gezeigt): Das Aussehen der Aktionsleiste kann geändert und an die jeweiligen Aktivitäten der Benutzer angepasst werden. Werden beispielsweise mehrere Elemente in einer Liste ausgewählt, können Sie die Standard-Aktionsleiste durch eine kontextbezogene Aktionsleiste ersetzen, um Benutzern die Auswahl auf der Grundlage dieser Elemente zu ermöglichen. Wenn beispielsweise mehrere Dateien gleichzeitig gelöscht werden können sollen, können Sie eine Löschen-Schaltfläche in die Kontext-Aktionsleiste aufnehmen.

      Unter http://d.android.com/guide/topics/ui/actionbar.html finden Sie weitere Informationen über die vielseitigen Möglichkeiten, die dieses Element der Benutzeroberfläche in Ihren Apps bieten kann.

Abbildung 1.4: Audio-App mit Menü in der Aktionsleiste

      Icon_Hand.jpgUnter Android 2.x und in noch älteren Versionen existiert die Aktionsleiste schlichtweg nicht! In diesen Android-Versionen werden in Ihren Apps enthaltene Aktionsleisten nicht angezeigt. Sie können jedoch die Aktionsleiste auch in 2.1 oder früher mithilfe der Support Library nutzen.

      Widgets und Benachrichtigungen

      Möglicherweise wollen die Anwender auf Informationen Ihrer App zugreifen, ohne diese explizit zu starten. Denken Sie beispielsweise an die Gmail-App, die es den Anwendern ermöglicht, eine Vorschau auf ihre E-Mails in einer Benachrichtigung anzuzeigen, bevor sie die Gmail-App öffnen, oder wie Sie die aktuelle Zeit auf Ihrem Launcher anzeigen, ohne dass Sie die UhrApp öffnen müssen. Dies sind Beispiele für die Verwendung von Benachrichtigungen und Launcher-Widgets.

      ✔ Launcher-Widgets: Widgets sind eine Art »Mini-Apps«, die Zugriff auf die Funktionalität Ihrer App direkt vom Launcher des Smartphones (auch als Startbildschirm bezeichnet) aus ermöglichen. Widgets sind in der Applikationsliste leicht zu finden. Sie können Informationen anzeigen, Schaltflächen und sogar Listenansichten enthalten, innerhalb derer ein begrenztes Wischen und Blättern möglich ist.

      ✔ Benachrichtigungen:

Скачать книгу