SeraphimSerapis
Enthusiast
- 1.233
Dieser Beitrag ist leider veraltet, weshalb wir in Kürze einen Neuen dazu erstellen
Hallo liebes Forenmitglied,
Du hast dich entschieden für Android zu programmieren, oder möchtest zumindest wissen, was im Hintergrund passiert?
Dann ist genau dieser Guide hoffentlich eine kleine, leicht zu verstehende Einführung, welche Dir bei den ersten Schritten innerhalb der Welt von SDKs, Eclipse und ADB hilft.
Ziel dieses Guides ist es nicht, Dir alles Schritt für Schritt in diesem Thread vorzuleben, sondern Dir einen Weg aufzuweisen, was Du tun kannst, und wo Du erste Informationen findest.
Deswegen habe ich auch keine eigenen Code-Beispiele geschrieben, sondern verlinke auf die bereits sehr guten und informativen Beispiele.
Vermutlich fragst Du dich jetzt, was überhaupt benötigt wird, um mit der Android-Programmierung loszulegen. Ich möchte versuchen die wichtigsten Komponenten aufzuzählen und kurz zu erläutern:
1. Voraussetzungen für die Android-Programmierung:
2. Deine erste(n)Anwendung(en):
Du hast Dich dazu entschieden für Android zu entwickeln und hast nun hoffentlich erste Java-Kenntnisse. Jetzt ist es Zeit Deine erste Anwendung zu entwickeln.
Hier: Hello, World | Android Developers findest Du eine wunderbare Anleitung um eine erste Nachricht auf Deinem Gerät oder innerhalb des Android-Emulators anzuzeigen.
Ganz ähnlich wie bei Swing lassen sich bei Android Interfaces zusammensetzen. Jedoch gibt es zusätzlich aber auch noch den bequemen Weg, ein GUI mit XML zu definieren.
Hast Du es geschafft? Dann geht es gleich weiter!
Hello, Views | Android Developers zeigt verschiedene Layout-Elemente, welche Dir immer und immer wieder begegnen werden. Natürlich kannst Du auch eigene Layout-Elemente definieren, jedoch muss man auch nicht für jede Aufgabe das Rad neu erfinden
Ziel von Hello, Views ist es natürlich Dich mit den verschiedenen Layout-Elementen bekannt zu machen und Dir ein Gefühl für GUI-Entwicklung mit dem Android SDK zu geben.
Solltest Du nun langsam der Meinung sein, dass Du mehr möchtest, kannst Du Dir zum Beispiel diesen Link anschauen: List of Sample Apps | Android Developers - hierbei sind verschieden Applikationen mit unterschiedlichen Funktionen aufgeführt, welche sehr interessant sind und auf jeden Fall viel nützliches vermitteln.
Was kannst Du noch tun?
Sei kreativ! Nutze die Forensuche! Frag nach! Lies Dir mal den Code von größeren Projekten durch, zum Beispiel hier: Google Code! Google!
Und wenn Du gar nicht mehr weiter weißt, dann frag einen Thread mit einer sinnvollen Frage. Wer richtig fragt und einen ordentlichen Ton verwendet, findet oft schnelle Hilfte durch viele kompetente Entwickler, welche sich hier im Forum tummeln.
3. Literatur und sonstiges:
Inzwischen gibt es auch im Bereich Android einige gute Bücher, die den Einstieg erleichtern, oder aber auch tiefergehende Themen wie zum Beispiel ContentProvider ausführlichst behandeln. Die Literaturempfehlungen, die ich hier gebe beruhen auf eigenen Erfahrungen mit den Werken:
4. Nützliche Tools:
Die meisten nützlichen Tools habt ihr bereits mit der Installation des SDKs vor Euch liegen:
Dieser Guide ist noch in Entwicklung und wird nach und nach von mir mit Informationen erweitert um Dir den Zugang zur Android-Entwicklung leichter zu machen...
Hallo liebes Forenmitglied,
Du hast dich entschieden für Android zu programmieren, oder möchtest zumindest wissen, was im Hintergrund passiert?
Dann ist genau dieser Guide hoffentlich eine kleine, leicht zu verstehende Einführung, welche Dir bei den ersten Schritten innerhalb der Welt von SDKs, Eclipse und ADB hilft.
Ziel dieses Guides ist es nicht, Dir alles Schritt für Schritt in diesem Thread vorzuleben, sondern Dir einen Weg aufzuweisen, was Du tun kannst, und wo Du erste Informationen findest.
Deswegen habe ich auch keine eigenen Code-Beispiele geschrieben, sondern verlinke auf die bereits sehr guten und informativen Beispiele.
Vermutlich fragst Du dich jetzt, was überhaupt benötigt wird, um mit der Android-Programmierung loszulegen. Ich möchte versuchen die wichtigsten Komponenten aufzuzählen und kurz zu erläutern:
1. Voraussetzungen für die Android-Programmierung:
- Java Kenntnisse:
Java ist eine der bekanntesten Programmiersprachen und findet in vielen Komponenten ihren Einsatz. Viele bekannte Tools und Programme basieren komplett oder zumindest zum Teil auf Java. Hierzu zählen unter anderem: eclipse, jDownloader, IBM Lotus Notes, NetBeans, aber auch bekannte Web-Applikationen wie eBay
Und wie lerne ich nun Java?
Hier gibt es natürlich viele Ansätze. Für die meisten Programmierer beginnt in fast jeder Programmiersprache alles mit Hello World. Dies ist eine Tradition, welche aus einem Eintrag in einem Programmierhandbuch von 1974 zur Sprache C entstanden ist.
Im Internet gibt es natürlich übermäßig viele Guides und Tutorials, welche allesamt irgendwo zum Ziel führen. Auch Fachliteratur gibt es natürlich haufenweise. Ich empfehle hierbei einfach mal das OpenBook Java ist auch eine Insel von GalileoComputing, welches hier: Galileo Computing :: Java ist auch eine Insel (8. Auflage) eingesehen werden kann.
Ich empfinde dieses OpenBook als sinnvollen Anfang für den Umgang / die Beschäftigung mit Java.
Achtung: Das Lernen einer Programmiersprache ist nicht leicht und kann auch oft deprimieren, aber mit stetiger Übung und sinnvollen Zielsetzungen, ist es durchaus schaffbar.
Vorteile von Java: Natürlich hat jede Programmiersprache ihre Vor- und Nachteile - ich versuche hier ein paar Vorteile zu nennen, welche auch bei Android zum Einsatz kommen.- objektorientiert
- dynamisches Speichermanagement
- kann Multi-Threading
- leicht zu erlernen
- Plattform unabhängig
- gute Performance
Was man verstehen/kennen sollte: Ich kann natürlich nicht alles aufschreiben, was wichtig ist. Jedoch versuche ich, eine kleine Liste mit nützlichen Begriffen zu verfassen, welche Dir im Laufe deines Studiums von Java sicherlich begegnen.
Achtung: Nicht jeder dieser Begriffe muss Dir in der Android-Welt begegnen, jedoch tragen sie zum allgemeinen Verständnis von Java sicherlich bei:- Threads
- Objekte
- Klassenvariablen
- Objektvariablen
- Handler
- Vererbung (Interfaces und Extends)
- Schleifen (for, while, do-while)
- Bedingungen (if, else, else if, switch:case)
- Rekursion
- Überladung von Methoden
- Oberflächen (Swing / AWT)
- ...
- Programmierumgebung für Android:
Sobald Du dich genug mit Java beschäftigt hast oder es einfach nicht mehr abwarten kannst, solltest Du Dir folgende Dinge runterladen, um deine ersten Schritte in der Android-Programmierung zu tätigen:- eclipse: Eclipse Downloads (Ich empfehle Classic)
- Java JDK: Java SE Downloads - Sun Developer Network (SDN)
- Android SDK: Android SDK | Android Developers
Sobald Du die genannten Komponenten runtergeladen hast, geht es natürlich ans Installieren. Nachdem du das JDK und eclipse installiert hast, geht es an das Android SDK.
Die benötigten Schritte hierzu findest du hier: Installing the SDK | Android Developers
Wenn Du die beschriebenen Schritte hinter Dich gebracht hast, geht es ans Eingemachte.
2. Deine erste(n)Anwendung(en):
Du hast Dich dazu entschieden für Android zu entwickeln und hast nun hoffentlich erste Java-Kenntnisse. Jetzt ist es Zeit Deine erste Anwendung zu entwickeln.
Hier: Hello, World | Android Developers findest Du eine wunderbare Anleitung um eine erste Nachricht auf Deinem Gerät oder innerhalb des Android-Emulators anzuzeigen.
Ganz ähnlich wie bei Swing lassen sich bei Android Interfaces zusammensetzen. Jedoch gibt es zusätzlich aber auch noch den bequemen Weg, ein GUI mit XML zu definieren.
Hast Du es geschafft? Dann geht es gleich weiter!
Hello, Views | Android Developers zeigt verschiedene Layout-Elemente, welche Dir immer und immer wieder begegnen werden. Natürlich kannst Du auch eigene Layout-Elemente definieren, jedoch muss man auch nicht für jede Aufgabe das Rad neu erfinden
Ziel von Hello, Views ist es natürlich Dich mit den verschiedenen Layout-Elementen bekannt zu machen und Dir ein Gefühl für GUI-Entwicklung mit dem Android SDK zu geben.
Solltest Du nun langsam der Meinung sein, dass Du mehr möchtest, kannst Du Dir zum Beispiel diesen Link anschauen: List of Sample Apps | Android Developers - hierbei sind verschieden Applikationen mit unterschiedlichen Funktionen aufgeführt, welche sehr interessant sind und auf jeden Fall viel nützliches vermitteln.
Was kannst Du noch tun?
Sei kreativ! Nutze die Forensuche! Frag nach! Lies Dir mal den Code von größeren Projekten durch, zum Beispiel hier: Google Code! Google!
Und wenn Du gar nicht mehr weiter weißt, dann frag einen Thread mit einer sinnvollen Frage. Wer richtig fragt und einen ordentlichen Ton verwendet, findet oft schnelle Hilfte durch viele kompetente Entwickler, welche sich hier im Forum tummeln.
3. Literatur und sonstiges:
Inzwischen gibt es auch im Bereich Android einige gute Bücher, die den Einstieg erleichtern, oder aber auch tiefergehende Themen wie zum Beispiel ContentProvider ausführlichst behandeln. Die Literaturempfehlungen, die ich hier gebe beruhen auf eigenen Erfahrungen mit den Werken:
- Android 2 Application Development von Reto Meier
Sehr frisch erschienen und das bisher beste Buch, welches mir in die Hände gekommen ist - 500 Seiten umfassend und keine ist langweilig. Ich habe es bei einem Aufenthalt im Krankenhaus an einem Tag das erste Mal durchgelesen und mochte sowohl den Schreibstil, als auch die ausführlichen Beispiele.
Auch für erfahrene Programmierer ist hier sicherlich noch das ein oder andere Schmankerl enthalten.
Achtung: Englisch
- Android: Grundlagen und Programmierung von Arno Becker
Ein älteres Buch, welches sich auf Android <= 1.5 konzentriert. Sehr gut geschrieben um die Grundlagen zu verstehen und ein nettes Fallbeispiel, welches konsequent weiterentwickelt wird.
Inzwischen übrigens auch als PDF kostenlos zu erhalten: dpunkt.verlag | E-Books
Dieses Buch bekommt von mir eine Einsteigerempfehlung!
- Videotutorial: Eclipse and Java for Total Beginners
Achtung: Englisch
4. Nützliche Tools:
Die meisten nützlichen Tools habt ihr bereits mit der Installation des SDKs vor Euch liegen:
- DDMS
Mit DDMS könnt ihr nicht nur Screenshots machen, sondern vor allem LogCat auslesen. LogCat zeigt alle möglichen Informationen an, die während der Ausführung einer App bzw. während der Ausführung des Systems passieren.
Entwickler haben mit LogCat ein tolles Tool um Informationen, aber auch Warnungen in einer Konsole anzeigen zu lassen.
Von daher ist LogCat für mich eines der wichtigsten Tools in der Android-Entwicklung, welche mir sehr beim Fehlerfindungsprozess helfen können.
Wie Du LogCat innerhalb deiner Anwendung benutzen kannst, findest du ausführlichst hier: Log | Android Developers
Kurzes Beispiel: Wir wollen einen String ausgeben, welcher uns zur Übersicht dient:
Code:Log.d("Name","onCreate gestartet");
- adb
Mittels adb kannst Du sowohl Dein eigenes Gerät, als auch den Emulator mit Befehlen fernsteuern. Zum Beispiel kannst du eine App (de-)installieren, oder auch eine Datei auf das Gerät schieben (push) bzw. vom Gerät runterladen (pull).
Der Syntax von adb wird wie üblich bei Kommandozeilenprogrammen mit folgendem Befehl angezeigt:Code:adb help
- layoutopt
Du bist Dir nicht sicher, ob Deine XML-Layout Dateien wirklich optimal geschrieben sind? Benutze layoutopt und finde es raus.
Die genaue Funktionsweise wird hier beschrieben: layoutopt | Android Developers
Kurzes Beispiel:
Code:layoutopt res/layout-land
Code:layoutopt res/layout/main.xml res/layout-land/main.xml
- draw9patch
Du hast schicke Grafiken, zum Beispiel für einen Header deiner App und regst dich jedes mal darüber auf, dass die Grafik falsch skaliert, wenn Du eine neue Version Deiner App auf verschiedenen Auflösungen testest?
Dafür gibt es eine tolle Alternative! Schon mal Dateien mit .9.png bei Android-Projekten gesehen? Hierbei kannst Du festlegen, welche Teile Deiner Grafik skalieren dürfen und welche nicht. Klingt cool?
Auf jeden Fall und ist auch noch einfach. Ein tolles Tutorial hierzu findet man übrigens bei AndroArt: Draw9 PNGs - Tutorials - Andro.Art
- DroidDraw: Ein interessantes Tool (gerade für Anfänger), welches nicht zum SDK gehört:
Ein simpler GUI-Builder, welcher Dir beim Design deiner Applikation helfen kann. Leider wurde er schon eine gewisse Zeit nicht mehr aktualisiert - es kann also vorkommen, dass nicht alle aktuellen Layout-Elemente vorhanden sind. Übrigens wurde DroidDraw auch in Java programmiert.
DroidDraw : Graphical User Interface Editor for Android Cell Phone Development and Programming
Dieser Guide ist noch in Entwicklung und wird nach und nach von mir mit Informationen erweitert um Dir den Zugang zur Android-Entwicklung leichter zu machen...
Zuletzt bearbeitet von einem Moderator: