Mit Android ein App schreiben

Hallo,

ich würde gerne meine eigene App für Android schreiben. Ich habe bisschen Erfahrung mit Haskell HTML und mit Java. Nun habe ich mir für Netbeans das Plugin für Android besorgt und wollte auch gleich loslegen. Da ich aber überhaupt keine ahnung habe wie ein Android Program Sytaktisch auszusehen hat habe ich mal nach verschiedenen codes gesucht. Nun habe ich folgendes gefunden.

package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class Hello 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);
}
}

Ich bin dann wie folgt vorgegangen. Netbeans geöffnet, neues Projekt erstellen, Fertigstellen, Quelltext eingefügt. Dann kam mein erstes großes Problem, welche Dateiendung hat eine Android Datei? Ich habs mal gegoogelt und auf einer Seite hab ich dann gelesen dass sie auch mit *.java endet, stimmt dass? Jetzt mein zweites Problem, wenn die Dateiendung stimmt, wieso kann ich es dann nicht mit dem normalen Java Compiler compilieren und ausführen? Ich vermute mal weil das Program nicht in Java sondern in Android geschrieben wurde, oder? Wo bekomme ich aber ein Compiler für Android?

liebe Grüße Matthias

Hi,

du brauchst erstmal die Android-SDK, wenn du diese hast musst du Netbeans sagen wo er diese findet (Build Path). In der SDK hast du alles was du zum Android programmieren brauchst, um dein App erstellen zu können.
(Ich kann dir die einrichtung unter Netbeans leider nicht beschreiben, bin Eclipse User)

Ein Android App besteht aus mehreren Dateien, die alle von einander abhängen z.B die „main.xml“ in der du dein Layout definierst oder die AndroidManifest.xml um die Permissions zu erteilen oder der gen-Ordner, von daher ist es leider nicht getan, wenn du einen Quellcode einfach kopierst, welcher nur eine Activity ist (android arbeitet mit Activitys).

Kannst du den in Netbeans ein Android-Projekt anlegen? Wenn ja dann leg mal eins an und schau dir alle Dateien, die dazu erzeugt werden, an. Wenn nein fehlt die SDK oder der Build-Path dazu.

Du musst natürlich auch einen Emulator einrichten (ist in der SDK dabei),damit du deine Apps auch testen kannst(hier ist zu beachten, dass die virtuelle SD-Card min. 9MB groß sein muss). Java läuft in der JVM und Android läuft in der DVM.

Wenn du noch fragen hast, frag! Am besten hol dir ein Buch dazu, da es im Internet nicht wirklich gute Tutorials dazu gibt > hier ein Vorschlag: Androidbuch

Das habe ich damals benutzt und fand es sehr gut.

Gruß

Hallo 3quin0x,

danke schön für deine schnelle Antwort und sry. ich hätte vielleicht noch erwähnen sollen, dass ich mir das Android SDK heruntergeladen und installiert habe. Anschließend habe ich unter Netbeans Android als Plugin installiert und den Pfad zu dem Ordner angegeben. Das heißt, ich kann nun unter Netbeans, Android Projekte erstellen. Ich habe zwei Möglichkeiten Projekte zu erstellen:

Android Project
Android Test Project

Zum Emulator:
Ich habe wie gesagt das Android SDK hertuntergeldaen und installiert. Ein Emulator war leider keiner dabei, den hab ich mir jetzt noch besorgt. Neben dem Emulator läuft immer noch ein Terminal, ich kann dort aber nichts eingeben … ist das normal? Dann hast du gesagt dass ich mind. 9MB speicher benötige. Ich habe selbst noch kein Smartphone :smile: aber wenn ich das richtige übersetze habe müsste ich 43MB freier Speicher haben.

Zu den Dateien:
Ich finde eine AndroidManifest.xml und eine build.xml Datei im Projektordner die Unterordner sind dann bin,gen,libs,res und src. In src ist natürlich mein Quellcode drin und in res ist die von dir erwähnte main.xml drin. Aber in all diesen Dateien steht schon was drin. sind dass dan sowas wie Standart einstellungen bzw. Standart Layouts?

danke nochmal für deine Hilfe,

lg Matthias

Hi brayn,

damit kommen wir der Sache schon näher. Leider kenne ich das Netbeans-Plugin nicht und kann dir da nicht helfen, keine Lust auf Eclipse umzusteigen? Netbeans hatte ich als Programmieranfänger benutzt und es hat sicher seine Vorteile gegenüber Eclipse, aber dennoch finde ich Eclipse besser (aber da scheiten sich die Geister).

Mit einem extra herunter geladenen Emulator, stell ich mir die Einstellungen schwierig vor (muss aber nicht sein).

In Eclipse gibt es einen ADV-Manager (schau mal ab es sowas auch in NB gibt) Dort kann man ein virtuel Device einrichten, einfach mit „new“, in dem öffnenden Fenster vergibst du einen Namen (egal welchen) und wählst als Target, die Androidversion bzw. API die du verwenden möchtest. (z.B. Android 2.2 _API Level 8), bei SD-Card wählst du 9MB und drückst create und schon hast du dein virtuelles Gerät, in welchem du dein App starten kannst.

Wenn du auf „run“ drückst, dann einfach dein eben erstelltes Gerät auswählen.

Wenn du richtig für Android programmieren möchtest, brauchst du auf jeden Fall ein richtiges Androidhandy, da vielleicht im Emulator dein App einwandfrei funktioniert (Da du mehr Ram zu Verfügung hast auf deinem PC) und wenn du es auf ein Handy portierst, es dir dann abschmiert. Aber zum entwickeln genügt der Emulator.

Nimm dir meinen Tipp zu Herzen und hol dir ein Buch, welches dir, die komplette Einrichtung und Aufbau eines Apps erklärt.

Kurz zur Übersicht: Im src-Ordner kommen deine Java-Klassen (u.a deine Acivities), den gen-Ordner vergiss erstmal am Anfang und mach dort nichts dran; Zum res-Ordner: die drawable-Ordner kommen deine verwendenden Bilder rein; im Layout Ordner erstellst du dein Layout, zu jeder Activity eine xml-Datei (Bsp. src/Startseite.java -> res/layout/startseite.xml usw.) im res-Ordner kannst du weitere Ordner erstellen, wie Menu z.B und legst dort deine Menu.xml’s ab (du musst wissen Android trennt Layout (in Form von xml) und Funktion (Java-Klassen).
Der value-Ordner, definierst du Strings, Item-Array’s oder Farb-Array’S.
Die AndroidManifest.xml meldest du alle deine Activities an oder Intents + vergibst berechtigungen, was dein App darf (wie Netzwerk zugriff z.B)

Das als grob Übersicht, du kannst noch viel mehr damit machen, hol dir das Buch, es erklärt dir jeden Schritt und ist sein Geld werd. Es gibt bestimmt auch andere hier die dir helfen können, aber ich bin in letzter Zeit sehr selten hier drin, da ich viel Stress in der Uni habe.

Viel Erfolg!

Hi,
ich bin Netbeansuser hab mit eclipse angefangen :smiley:
Aber zum Thema, gute Infos gibt es direkt bei google: http://developer.android.com/index.html
Unter Tools>Android SDK und AVD Manager kannst du dir Netbeans die VMs erstellen.
Als Buch würde ich dir eher das hier empfehlen: http://www.galileocomputing.de/katalog/buecher/titel… hab mit Galileo Computing nur gute Erfahrungen.
Lg Knerd

Hallo Knerd,

danke für deine Hilfe. Ich habe mal versucht deinen Anweisungsn zu folgen, jedoch gibt er zum Schluß ein Fehler aus, den hier.

PANIC: Could not open AVD config file: D:\Users\Matthias Tschöpe.android\avd\HTC.avd/config.ini

kennst du diese Fehlermeldung, was mache ich falsch?

Wie ich 3quin0x schon geschrieben habe, habe ich mir auch noch ein anderer Emulator besorgt. Den grig ich zumindest soweit dass ich das Smartphone sehen und es bedienen kann. Ich weiß aber jetzt nicht mehr weiter, welche Datei muss ich wie ausführen?

Der zweite Emulator habe ich von hier:
http://www.winload.de/s/android-emulator-download
den muss man nicht installieren, einfach downloaden und die *.exe ausführen.

lg Matthias

Hallo 3quin0x,

danke schön für deine Hilfe, du hast mir schon ganz schön geholfen.

Viel Erfolg bei deinen Klausuren :wink:

lg Matthias

Hi,
deinstallier/lösch einfach alles was du dir zum Thema Android geholt hast also alle SDKs und lad dir das offizielle von google runter. http://developer.android.com/index.html
Lg Knerd

Hi,

ich hab mir mal das Buch besorg und jetzt läuft es auch :smile: danke schön nochmal.

lg Matthias

Hi Matthias,
dafür ist das Forum da. Nichts zu danken.
Lg Knerd

1 Like