Ergebnis 1 bis 20 von 79
-
Fühle mich heimisch
- 15.04.2010, 13:30
- #1
Hallo,
nach meiner Anfrage im Desire-Forum, ob ich ein kleines HowTo für ein HelloWorld-Programm einstellen darf, bin ich auf dieses allgemeine Android-Forum verwiesen worden.
Hier ist also eine kurze Anleitung, was man tun muß, um selbstgeschrieben Anwendungen auf's Desire zu bringen:
Als erstes beschreibe ich mal mein System:
Systembeschreibung
Ein PC mit installiertem Ubuntu (Karmic Koala), ein HTC Desire, verbunden über den USB-Port. Viel mehr braucht man hardwaremäßig schonmal nicht...
Eclipse installieren
An Software empfehle ich Eclipse als IDE (integrated Development Environment). Android bietet dafür auch nette Plugins, die einen bei der Entwicklung unterstützen. Downloadenkann man die neueste Version jeweils hier: http://www.eclipse.org/downloads/
Es genügt, den kleineren Download "Eclipse IDE for Java Developers (92 MB)" zu nehmen.
Die Umgebung dann installieren (in Windows und Linux eigentlich nur entpacken und vielleicht irgendwo einen Link zum Starten hinsetzen).
Android SDK installieren
Als nächstes braucht man Androids SDK (Sourcecode Development Kit), zu finden unter http://developer.android.com/sdk/index.html. Auch hier reicht (in Windows und Linux) ein einfaches Entpacken in ein Verzeichnis. Das Verzeichnis sollte man sich aber merken, das braucht man später nochmal.
Damit hat man erstmal alles heruntergeladen was man braucht, weitere kleine Downloads werden gleich beim konfigurieren fällig.
Android Plugin für Eclipse
Jetzt werden die Android Development Tools (ADT) als Plugin in Eclipse installiert. Dafür startet man Eclipse. Mein Computer ist auf Englisch als Betriebssystemsprache eingestellt, deswegen wird es jetzt etwas ungenauer. Ich veruche zu jedem Menüeintrag meine beste Übersetzung zu geben, die muß aber nicht genau stimmen. Aber ihr solltet finden, was gemeint ist
im Menü "Help" (Hilfe) den Eintrag "Install new Software" (Neue Software installieren) auswählen. "Add" (Hinzufügen) anklicken. Dann einen Namen vergeben (z.B. "Android Plugin") und als Adresse https://dl-ssl.google.com/android/eclipse/ angeben. Wenn diese Adresse nicht funktionieren sollte auch mal mit "http://" statt "https://" probieren.
"OK" drücken und ein Häkchen an die dann erscheinenden "Developer Tools" setzen. Damit ist auch alles darunter verschachtelte ausgewählt. Mit "Next" (Weiter) gibt's nochmal eine Auflistung, was gewählt wurde, nochmal "Next" (Weiter) führt zum License Agreement, akzeptieren und "Finish" (Beenden) installiert dann alles für's Plugin.
Eclipse sollte nach dieser Installation neu gestartet werden.
Als nächster Schritt folgt die Einrichtung von ADT in Eclipse. Im neu gestarteten Eclipse das Menü "Window" (Fenster) auswählen, darin "Preferences" (Einstellungen). In der Liste links "Android" auswählen und rechts im Fenster den Pfad zum SDK-Verzeichnis angeben (s.o., habt ihr euch gemerkt) "Apply" (Anwenden) und "OK" drücken und fertig ist auch dieser Schritt.
Android Packages und Plattform
Weiter geht's mit der Einrichtung einer Platform, also eines Emulators für ein Android-Gerät, auf dem ihr die Software laufen lassen könnt. Dafür müssen als erstes nochmals einige Packages heruntergeladenund installiert werden, wieder aus Eclipse heraus.
In Eclipse das Menü "Window" (Fenster) und darin "Android SDK and AVD Manager" auswählen. Ein Klick auf "Available Packages" (Verfügbare Pakete) in der linken Liste zeigt euch rechts downloadbare Pakete an. Im wesentlichen unterteilen die sich in die API-Versionen 3 (für Android 1.5), 4 (für Android 1.6), 6 (für Android 2.0.1) und 7 (für Android 2.1). Ihr braucht nicht alle, mein Ziel ist es,das ganze auf demHTC Desire zum laufen zu kriegen, deswegen installier ich mir alles von API 7, also Doku, Platform, Beispiele und Google APIs. Häkchen dran, "Install selected" (Ausgewählte installieren), Lizenzen akzeptieren (am besten mit "Accept all" (alle akzeptieren)) und schon lädt und installiert er.
Virtuelles Gerät (Emulator)
Wenn man noch im "Android SDK and AVD Manager" ist kann man auch gleich ein virtuelles Gerät anlegen.
Dafür bei "Virtual Devices" (Virtuelle Geräte) aus der linken Liste, rechts "New" (Neu) anklicken. Dann einen Namen vergeben (z.B. HTC_Desire, Leer- und Sonderzeichen sind hier nicht erlaubt), "Target" (Ziel), also die Plattform angeben (bei mir Android 2.1), Eine Größe für die virtuelle "SD-Card" angeben (mindestens 9 MB), "Skin" auswählen (beim Desire "built-in" (eingebaut) in WVGA800) und "Create AVD" (AVD erstellen) drücken.
Damit sind die Vorbereitungen abgeschlossen. Jetzt erstellen wir ein Eclipse-Projekt zur Android-Programmierung.
Projekt und Programmierung
In Eclipse im Menü "File - New - Project..." (Datei - Neu - Projekt...) auswählen. Aus der Liste der möglichen Projekttypen das "Android - Android Project" auswählen und "Next" (Weiter) drücken. Hier öffnet sich einFenster, in dem man Details zu seinem Projekt eingeben kann. In unserem Beispiel HelloWorld als Name des Projekts, als "Build Target" Android 2.1 (oder eure gewählte Plattform) auswählen, "Application Name" (Anwendungsname, also der Titel des Icons / Fensters auf dem Gerät)) "Hello, Android", als "Package Name" z.B. com.example.helloandroid, und als "Create Activity" HelloAndroid". Mit "Finish" (Fertigstellen) erstellt man das Projekt.
Das Projekt erscheint jetzt links im Eclipse-Fenster und ist von den Android-Tools schon ein bisschen bevölkert worden. Interessant zum programmieren ist der Ast unter "src" (für "Source", also Quellcode). Darunter steht der eben gewählte Package Name und darin schon ein Java-File, was letztendlich ausgeführt wird. So wie es da steht macht es allerdings noch nichts, bietet aber schonmal einen Ansatzpunkt dafür, wie's weitergeht.
Der folgende Code stammt von http://developer.android.com/resourc...llo-world.html, wo das ganze auch nochmal ausführlicher (allerdings in Englisch) beschrieben ist. Ihr müsst es vielleicht an Euren gewählten Package Namen anpassen:
package com.android.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android");
setContentView(tv);
}
}
Diese Änderungen speichern (mit Rechtsklick im Editor - "Save" (Speichern) auswählen), und schon kann man es mit dem Menüpunkt "Run - Run - Android Application - OK" ausführen lassen. Es öffnet sich ein Android-Emulator, der etwas länger zum initialisieren braucht (vor allem beim ersten mal). Darin startet dann eure Android-Applikation.
Übertragung zum Handy
Jetzt kommt der letzte Schritt, die Übertragung der Applikation auf das "reale" Android-Gerät. Das funktioniert entweder, wenn man ein Zertifikat zum Signieren der Applikation hat, oder wenn man es im Debug-Modus macht. In Ermangelung eines Zertifikats beschreibe ich hier mal den Debug-Modus.
Um den Einzuschalten muß man im Eclipse-Projekt das AndroidManifest.xml (vorletzter Eintrag im Projekt) öffnen. Es öffnet sich die "Android Manifes Application" im Editor-Fenster. Unten sind Karteikartenreiter für "Manifest", "Application", "Permissions" etc. Davon Application auswählen. Unter den "Application Attributes" darin gibt es einen Eintrag "Debuggable" (evtl etwas nach rechts scrollen, beimir ist es der dritte Eintrag rechts). In das Textfeld rechts daneben den Wert "true" (ohne Anführungszeichen) eintragen. Ich weiß nicht genau, wie man da speichern soll, aber man wird gefragt, wenn man dieses Fenster zumacht
Die nächste Änderung ist am Handy vorzunehmen. Unter "Einstellungen - Anwendungen - Entwicklung" das "USB-Debugging" einschalten. Die Sicherheitsabfrage mit "OK" bestätigen. "USB-Debugging bewirkt, daß bestimmte Anwendungen auf dem Rechner Zugriff auf Logs und andere Dateien haben. Bei "USB-Debugging" müßt ihr auch nicht den "Festplatten-Modus" beim Verbinden einstellen, "Nur Laden" reicht.
Wieder auf den großen Rechner: Windows-Benutzer müssen hier http://developer.android.com/sdk/win-usb.html noch einen USB-Treiber herunterladen. Ich benutze kein Windows, deswegen kann ichzur genauen Installation hier nichts sagen.
Unter Ubuntu muß eine Datei /etc/udev/rules.d/51-android.rules angelegt werden, in der die Zeile
Code:SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
Wenn ihr das alles gemacht habt, und jetzt nochmal "Run - Run - Android Application - OK" auswählt, startet die Applikation nicht mehr sofort im Emulator, sondern bietet euch den Emulator oder euer Gerät zum Starten an. Ihr erkennt das Gerät an der Seriennummer, die z.B. hinten auf der Verpackung oder innen hinter dem Akku steht.
Markiert das, und drückt "OK", und viel schneller als bei dem Emulator sagt euer Handy "Hallo, Android" zu euch
Fazit
Ich war überrascht, wie schnell und problemlos das alles ging. Das lag vor allem an den guten Anleitungen, an denen ich mich hier auch orientiert habe. Allerdings muß man da zwischen den einzelnen Themen hin- und herspringen, wobei ich hier eine Applikation von Anfang bis Ende beschrieben habe.
Es hat wesentlich länger gedauert, das ganze hier aufzuschreiben, als es wirklichzu machen (OK, ich bin erfahrener Programmierer). Ich hoffe, der ein oder andere hat Erfolg mit dieser Beschreibung. Mal sehen wie es weitergeht. Bei Fragen stehe ich zur Verfügung, ich werde diesen Thread im Auge behalten.
-
- 15.04.2010, 13:52
- #2
Super, vielen dank!
vielleicht noch ein bisschen mit BB Code formatieren
-
kocht ROMs
- 15.04.2010, 15:22
- #3
Erstmals vielen Dank für die tolle Anleitung!
Eine Frage zum Eclipse Download: Muss man die oberste und die unterste (Umgebung) Datei auf der Liste downloaden?
-
Fühle mich heimisch
- 15.04.2010, 15:40
- #4
-
Fühle mich heimisch
- 15.04.2010, 16:13
- #5
-
erazer Gast
Wäre noch interessant, wie man das Programm dann fix auf dem Handy zum laufen kriegt...
(Ohne Debug USB Zeug...) - d.h. installieren
mfg
-
Fühle mich heimisch
- 15.04.2010, 16:26
- #7
Die App ist dann auf deinem Handy drauf, die läuft auch wenn USB dann abgestöpselt ist. Für eine Verteilung deines APKs oder eine Veröffentlichung im Market brauchst Du dann aber eine richtig zertifizierte Version.
Aus Neugierde hab ich's mal probiert, man kann das apk (zu finden im Projektverzeichnis unter /bin) auch so auf das Handy übertragen und starten, ganz ohne zu murren und ohne USB-Debugging. Evtl. ein selbsterstelltes Zertifikat mit begrenzter Laufzeit? Vielleicht auch, weil es schonmal installiert war?
Gefunden:
The certificate does not need to be signed by a certificate authority: it is perfectly allowable, and typical, for Android applications to use self-signed certificates.
Quelle
-
kocht ROMs
- 15.04.2010, 16:26
- #8
Also die wichtigsten BB-Code Formatierungen sind bereits oben im Editor eingebaut. Zum Beispiel: (Halb)Fett, Kursiv, Unterstrichen, Linksbündig, Zentriert, rechtsbündig, Auflistungen etc.
-
kocht ROMs
- 15.04.2010, 17:38
- #9
Noch eine Frage: Wie kann ich visuell arbeiten? Beim "normalen" Java kann man ja eine visual class erstellen, wie ist es hier? Gibts da kein GUI, oder muss man alles von Hand Coden?
-
Fühle mich heimisch
- 15.04.2010, 18:27
- #10
Also im Projekt gibt es unter /res/layout eine main.xml, in der das Layout der App festgelegt wird. Das geht scheinbar auch grafisch. Da kannst Du Textboxen, Checkboxen, sogar komplexere Sachen wie einen TimePicker (wie beim Kalender mit den drehenden Zahlenrädern) oder eine Analoguhr einbauen. Gibt auch verschiedene Layouttypen (Grid, Frame, absolute). Damit muss man sich aber wohl ein bisschen beschäftigen... Man kann es auch direkt im XML coden
-
erazer Gast
Ich vermute mal da gibt es bereits eingebaute Klassen für die meisten Steuerelemente...
mfg erazer
-
Ehrenmitglied
- 15.04.2010, 19:03
- #12
Schöner Beitrag oben über das Einrichten der Entwicklungsumgebung.
Vielleicht noch etwas formatieren, dann wärs perfekt
Es gibt noch ein schönes kostenloses EBook zum generellen Entwicklen für Android.
(War glaub ich bereits hier im Forum verlinkt)
Hier die news von Chip.de
(denke man wird bei Chip.de nicht direkt auf das Dokument verlinken dürfen... aber ihr findet es ja)
zum formatieren:
dick/unterstrichen etc ist ja klar, für codebeispiele gibts den [code]...[/code]-tag(behält formatierungen)
-
Gehöre zum Inventar
- 15.04.2010, 20:01
- #13
Ja sagst du doch selber: main.xml
Prinzipiell ist für Android eine "modulare" Programmierung angedacht. Man kann Layout auch direkt in die Klassen einbauen (das wolltest du wahrscheinlich sagen, oder?), jedoch sollte man Layout in der XML Datei festhalten und Funktionalität des Programms in der Klasse.
Das gilt übrigens auch für Strings. Das wäre der einzige kleine Kritikpunkt von mir an deinem Tutorial: Strings - also Text - sollten ebenfalls aus der Klasse ausgelagert werden und in einer XML-Datei (strings.xml) festgehalten werden.
Ansonsten echt tolles Tutorial! Danke, dass du dir die Arbeit gemacht hast!
Das von Rumbel angesprochene ebook kann ich übrigens auch nur empfehlen. Hab zwar nur ein paar Seiten bisher gelesen, aber es macht Spaß. Hier nochmal für alle die es interessiert: http://www.pocketpc.ch/android-news/...ammierung.html
-
Fühle mich heimisch
- 16.04.2010, 07:14
- #14
-
Gehöre zum Inventar
- 16.04.2010, 09:28
- #15
Sorry dann hatte ich dich falsch verstanden!
-
- 16.04.2010, 09:31
- #16
ich werd mich mal am Wochenende hinsetzen und auch mal versuchen ne kleine App zu entwickeln, muss ja erstmal nicht viel können
-
Loathing Gast
suuuper Anleitung !! Vielen, vielen Dank dafür !
-
- 18.04.2010, 17:33
- #18
Bin Gerade am ausführen der Anleitung. Benutze allerding nicht Ubuntu sondern Windows. Komme bissher ganz gut zurecht.
Ich würde vielleicht noch erwähnen, dass Javaruntime benötigt wird, um Eclipse zu starten.
Downloadlink(alles Betriebssysteme): http://java.com/de/download/manual.jsp
-
- 21.04.2010, 14:25
- #19
Ich sehe es gibt einige Interessenten zum Thema Android Entwicklung.
Wir könnten dafür ein eigenes Forum zum Erfahrungsaustausch einrichten, was meint ihr? Würde das Forum benutzt werden?
-
- 21.04.2010, 14:32
- #20
ist die frage ob es viele deutschsprachige Entwickler gibt die sich hier aufhalten oder eher in englischen Foren
Sent from my Nexus One using Tapatalk
Ähnliche Themen
-
Android 2.1 SDK Verfügbar
Von qvert im Forum Android NewsAntworten: 0Letzter Beitrag: 12.01.2010, 07:54 -
android-sdk download
Von mysnake im Forum HTC Hero Root und ROMAntworten: 1Letzter Beitrag: 01.12.2009, 19:06 -
Das Android 1.6 SDK ist da!
Von infero im Forum HTC HeroAntworten: 4Letzter Beitrag: 16.09.2009, 16:54 -
Google Android 1.5 SDK veröffentlicht
Von Marco Laeng im Forum Android NewsAntworten: 0Letzter Beitrag: 28.04.2009, 13:28
Pixel 10 Serie mit Problemen:...