1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Android zum Entwickeln

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von The_S, 08.01.2010.

  1. The_S, 08.01.2010 #1
    The_S

    The_S Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    105
    Erhaltene Danke:
    10
    Registriert seit:
    07.01.2010
    Hi-Ho,

    ich überlege momentan in die Android-Programmierung einzusteigen. In Java beherrsche ich die gängigsten Technologien (Java SE, ME und EE).

    Mir stellt sich jetzt jedoch die Frage, welches Gerät am Besten zur Entwicklung geeignet ist. Besteht die Möglichkeit, die OS Versionen auf den Geräten Up- oder Downzugraden? Kann ich davon ausgehen, dass eine App für 1.1 auch auf 2.1 läuft? Wie zuverlässig sind die Emulatoren (in Java ME sind diese bspw. grausig)?Kann sich die ein und dieselbe Android Version (bspw. 1.6) auf zwei unterschiedlichen Geräten unterscheiden? Welches Gerät würdet ihr zum Entwickeln empfehlen? Können die Apps nur über den Marketplace vertrieben werden? Und gibt es sonst noch irgendetwas besonderes/wissenswertes, dass man wissen sollte, bevor man sich an die Entwicklung macht?

    Vielen Dank!
     
  2. SirMArtin, 08.01.2010 #2
    SirMArtin

    SirMArtin freier Samsungsupporter

    Beiträge:
    113
    Erhaltene Danke:
    7
    Registriert seit:
    05.08.2009
    Tach auch. Ich erzähls mal aus meiner Sicht:
    Wir haben ähnliche Vorraussetzungen. Nur habe ich keine Ahnung von JavaME.

    Theoretisch ja. Ist aber i.d.R. mir viel Aufwand verbunden.

    Gute Frage. AFAIK gab es schon API-Änderungen bspw. bei der Widget-API.

    Ich finde den Emulator eigentlich ganz gut. IMHO wird tatsächlich ein Android gestartet. Dieses ist (fast) voll funktionsfähig. Ich entwickle lokal mit diversen Emulator-Instanzen (Portrait, Landscape, unterschiedliche Auflösungen). Regelmäßig deploye ich dann auf meine beiden Geräte um zu schauen, ob der Emulator mich nicht anschwindelt.

    Ja. Android tritt explizit mit dem Anspruch an, dass es durch die Hersteller anpassbar ist. IMHO hat das aber bisher - bis auf die Oberfläche bei HTC - niemand gemacht.

    Du kannst Dein Android an den Rechner anschließen und direkt aus dem SDK deployen. Dann verhält es sich gegenüber dem SDK sogar genau wie der Emulator (inkl. Logging und Debugging). Ob es große Unterschiede bei der Entwicklung zwischen den Geräten gibt, wage ich zu bezweifeln, lasse mich aber gern eines besseren belehren. Ich persönlich nutze ein Galaxy und ein Spica. Läuft reibungslos.

    Nein. Aber es ist empfehlenswert. Der Marketplace bietet Dir einen großen Vorteil: Jedes Android hat ihn vorinstalliert. Somit wird es für Deine User leichter Deine App zu finden.
     
    Zuletzt bearbeitet: 08.01.2010
    The_S bedankt sich.
  3. The_S, 08.01.2010 #3
    The_S

    The_S Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    105
    Erhaltene Danke:
    10
    Registriert seit:
    07.01.2010
    Hi, danke für deine Antwort

    Kann man den Aufwand in etwa in Zeit beziffern? Und anders gefragt, ist es sinnvoll zwischen den Versionen zu wechseln? Oder sollte man bei bspw. 1.5 bleiben (sollten die meisten installiert haben!?) und auf die "Abwärtskompatiblität" vertrauen?

    Evtl. kennt sich hier ja noch jemand besser aus.

    Also genügt theoretisch ein Android Gerät mit möglichst niedriger Version (Absicherung), und alles andere erledigen die Emulatoren für mich!?

    Und hat das Auswirkungen auf die Entwicklung? Also kann es sein, dass mein Programm auf einem 1.5 Gerät läuft, und auf dem anderen 1.5 Gerät nicht? Vorausgesetzt ich verwende nur die Standard-API ...

    Und wenn wir gerade dabei sind: Haben einzelne Hersteller die Möglichkeit, das Standard-API um weitere Funktionalitäten zu erweitern?

    Ging mir eher darum, ob man da bspw. ein weit verbreitetes wählt, ein älteres (um eine hohe Kompatibilität anzustreben), ein modernes (um auf dem neuesten Stand der Technik zu bleiben), eins mit zusätzlicher Tastatur (oder lässt sich auch alles ohne zusätzliche Tastatur zuverlässig testen?), oder am Besten gleich zwei oder mehrere.

    In welchem Format liegen den fertige Android-Apps vor? Als JAR? Könnte ich auf meiner Website (weil ich weiß, dass alle User sowieso auf meine Website kommen, um meinen Service zu nutzen) eine entsprechende Datei zum Download anbieten, die der User entweder direkt auf sein Android laden kann, oder vom PC auf sein Android ziehen kann?

    Danke!
     
  4. 2Stoned, 08.01.2010 #4
    2Stoned

    2Stoned Erfahrener Benutzer

    Beiträge:
    158
    Erhaltene Danke:
    13
    Registriert seit:
    23.05.2009
    Phone:
    HTC Desire HD
    Ich habe zwar auch erst gerade frisch mit Android angefangen, aber ich denke ich kann deine Frage, zumindest teilweise, beantworten.

    Bei Eclipse kann man sehr schön verschiedenen Android Versionen Emulieren, auch CustomROMs. Ich würde dazu den Emulator wechseln. Dauerndes ROM-Wechseln auf dem Gandy selbst wäre mir zu Mühsam. Jedoch geht das relativ leicht, zumindest mit root.

    Es gibt etliche Programme die nur bis 1.5 laufen. Also wird sich da wohl schon etwas geändert haben.

    Da würde ich eher auf weit verbreitetes setzen, was i.d.R. wohl die aktuellste Version sein dürfte, dank OTA-Updates.

    Falls du etwas programmierst was dann root benötigt, würde es halt dann nur auf gerooteten Geräten laufen.

    Als *.apk. Eclipse mit entsprechendem PlugIn exportiert das von selbst, signiert es entsprechend und optimiert es imho auch noch. (zipalign)

    Ich wünsche viel Spass
     
    Zuletzt bearbeitet: 08.01.2010
    The_S bedankt sich.
  5. The_S, 08.01.2010 #5
    The_S

    The_S Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    105
    Erhaltene Danke:
    10
    Registriert seit:
    07.01.2010
    Schon einmal danke für den Versuch :) .

    Ja, wenn dies gleichwertig mit den "echten" Versionen ist ... !?

    Und jetzt noch einmal für Leute, die noch nie für Android programmiert haben ;) .

    Wäre super, wenn jemand wissen würde, was sich da genau geändert hat und wo die Hürden liegen.

    Noch ein Wort, das ich nicht in meinem Wortschatz finden kann :o

    s. o.

    Und das kann ich dann einfach auf ein Android-Gerät ziehen und von dort aus installieren?

    Dankeschön :)
     
  6. 2Stoned, 08.01.2010 #6
    2Stoned

    2Stoned Erfahrener Benutzer

    Beiträge:
    158
    Erhaltene Danke:
    13
    Registriert seit:
    23.05.2009
    Phone:
    HTC Desire HD
    Wie gesagt sollte es zumindest so sein. Garantieren kann ich es dir allerdings nicht.

    Da Android OpenSource ist, kann sich ja jeder damit verdingen. So gibt es mittlerweile eine recht anschauliche Anzahl an verschiedenen ROMs/OS/Firmware/Betriebssystem wenn man so will. Diese zeichnen sich durch erweiterte Funktionen, Optimierungen, Spielereien usw. aus.

    Eines davon haben fast alle gemeinsam:
    Root bedeutet quasi "Administratoren-Rechte" unter Linux. Damit lassen sich natürlich mehr Befehle ausführen als es ein "normaler Nutzer" könnte.
    Wenn du nun eine App schreiben würdest, die Systemdateien oder den CPU Speed oder ähnliches verändert, dann muss diese App mit erweiterten Rechten, mit root-Rechten, laufen. Ich glaube auch das rebooten des Telefons aus einer App heraus erfordert schon root.

    Hat man root, hat man meist auch ein verändertes Recovery Menu. Das Recovery Menu lässt sich z.B. beim Booten aufrufen, in dem man nebst dem Powerknopf auch noch den "Home"-Button gedrückt hält (jedenfalls beim G1). In diesem Menu kann man dann, je nach Ausstattung, verschiedenste Sachen machen. Zum einen kann man verschiedene ROMs flashen, sprich auf das Handy überspielen. Zum anderen kann man aber auch BackUps aller Systemeinstellungen, des ganzen Systems+SD-Karte machen usw. Weitere Funktionen währen evtl. noch das partitionieren der SD-Karte oder gewisse Scripte ausführen zu lassen.

    Eine Wortverschmelzung aus Google Handy :D

    Over The Air. T-Mobile "verschickt" anfällige Updates durch die mobile Datenverbindung direkt auf die Geräte, so dass die Nutzer auf dem neusten Stand bleiben. Dies geht allerdings nur, wenn man das StandardROM, sprich eben dieses welches von TMo verschickt wird installiert hat. Wer es nicht hat, aber sein Gerät gerootet hat, wird sich wohl selbst darum kümmern, immer up to date mit dem Developer seines ROMs zu bleiben.
    Hingegen ist es auch beim Offiziellen nicht ganz so einfach.
    z.B. das HTC Hero steht erst bei Version 1.5, da HTC für das Hero ein eigenes ROM gebastelt hat, und dieses noch nicht updatete.
    Das G1 und (Konsorten) steht bei 1.6
    Milestone bei 2(.0.1)
    Und das Nexus One bei 2.1

    Custom ROM Entwickler bauen häufig schon feature kommender Versionen ein, da der Quellcode, oder Teile davon, meist schon verfügbar sind, bevor sie von den grossen Anbietern, z.B. TMo vertrieben werden.

    Wenn die APK im Market ist, wird der Market sie installieren.
    Wenn man sich eine App herunterläd, z.B. auf den PC, dann muss man diese auf die SD-Karte kopieren und von dort aus installieren.
    Dann könnte man auch noch per ADB installieren, was aber wohl die aller aller wenigsten machen. Ich mache dies nur mit Systemapplikationen, die ich sonst nicht ersetzen könnte, oder gestern weil ich CoPilot updaten wollte aber mein Gandy meinte ich hätte zu wenig Speicherplatz.

    Ich hoffe ich konnte einige Dinge klären :)
     
    The_S bedankt sich.
  7. The_S, 08.01.2010 #7
    The_S

    The_S Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    105
    Erhaltene Danke:
    10
    Registriert seit:
    07.01.2010
    ja super, danke. Wenn noch jemand was weiß, bitte melden ;) .
     
  8. garak, 08.01.2010 #8
    garak

    garak Ehrenmitglied

    Beiträge:
    8,270
    Erhaltene Danke:
    4,794
    Registriert seit:
    12.12.2009
    Das es Geräte mit Hardwaretastatur gibt, die sich definitiv im Verhalten von der virtuellen Tastatur unterscheidet, würde ich auf jeden Fall (und wenn es nur für die Entwicklung ist) ein solches Gerät wählen. Außer man hat nicht vor, die Tastatur im Programm zu verwenden.

    Gruß
    Chris
     
    The_S bedankt sich.
  9. The_S, 08.01.2010 #9
    The_S

    The_S Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    105
    Erhaltene Danke:
    10
    Registriert seit:
    07.01.2010
    Auch dir ein herzliches Dankeschön
     

Diese Seite empfehlen