Hat jmd Erfahrung mit der Entwicklung einer Android App?

...komplette Frage anzeigen

7 Antworten

Wenn ihr ohnehin mit Eclipse arbeiten wollt und euch mit dieser Entwicklungsumgebung auskennt, dann nutzt die ADT (Android) für Eclipse. Mit dieser Variante habe ich auch die ersten Apps in den Store gebracht.

Dadurch, dass Android nun eine eigene Entwicklungsumgebung (Android Studios) herausgebracht hat, bin ich ebenfalls darauf umgestiegen. Ist etwas Eingenwöhnungszeit nötig, aber man merkt, dass dieses Programm explizit für die Android Programmierung gedacht ist. Eclipse mit ADT hat manchmal etwas "gemeckert" und gerade mit den VM's Fehler verursacht. Das gehört bei Android Studios der Vergangenheit an.

An eurer Stelle würde ich direkt mit Android Studios starten, immerhin wird das ADT für Eclipse nicht mehr erstklassig weiterentwickelt.

Stellt explizite Fragen, dann kann man auch konkreter werden.

Grüße,
Hummel

Antwort bewerten Vielen Dank für Deine Bewertung

Wenn Du tatsächlich was lernen willst was dir evt, auch nach dem Studium was nützt dann würde ich von Basic4Android eher abraten sondern (wie wohl 98% aller Android Programmierer) zu Java greifen.

Ob man nun Android Studio oder Eclipse nimmt ist zur Zeit weitgehend Geschmackssache - wenn Du schon anderweitige Erfahrungen mit Eclipse hast und damit klar kommst würde ich dabei bleiben.

Zur Programmierung von App für Android selbst solle man Java gut beherrschen.

Eine Hürde die man nehmen muss ist das andere Programmiermodell von Apps. Man hat nicht ein einzelnes Hauptprogramm das irgendwann mal gestartet wird und dann durchläuft bis die App beendet ist.

Stattdessen hat man es mit sogenannten Activities zu tun (die in etwa einzelnen Dialogen entsprechen) und die von Android gestartet werden (meist durch einen Request oder in der Android-Terminologie "Intent") einer anderen Activity die entweder zur eigenen App aber auch zu einer anderen App gehören kann.
Auch beendet Android eine Activity - wenn z.B. zu einer anderen Activity gewechselt wird oder der Speicher knapp wird oder warum auch immer.

Man schreibt also unter Android nicht ein Programm sondern viele Programme von denen sich jedes nur um einen einzelnen Dialog/eine einzelne Anzeige kümmert und normalerweise auch nur solange läuft wie dieser Dialog/Anzeige sichtbar ist.
Diese einzelnen Activitäten sind untereinander auch nur lose gekoppelt und beim Datenaustausch zwischen Aktivitäten gibt es einiges zu beachten.

Man muss auch verteufelt aufpassen, dass man nicht vesehentlich Java Objekte erstellt die länger als notwendig "am Leben" bleiben weil RAM eine knappe Resource unter Android ist.
Das erfordert das man sich sehr genau mit dem Lebenszyklus von Activities beschäftigt und genau überlegen muss wann man Objekte erstellt und wo man Referenzen auf sie hält.

Bei realen Anwendungen kommt noch ein weiteres Problem auf einen zu.

Alles was länger als eine Sekunde dauert solle (und muss teilweise) in separate Threads ausgelagert werden.
Man kommt also um Multithread-Programmierung und all den "schönen" Problemen die dadurch entstehen (wie z.B. mögliche Deadlocks, Synchronisation zwischen den Threads usw) nicht herum.

Schwierigkeiten macht bei realen Apps auch die Vielzahl von extrem unterschiedlichen Geräten (vom 12 Zoll Tablet bis zum Handy mit einem 3 Zoll Screen) mit unterschiedlichen Android-Versionen, unterschiedlicher Prozessorleistung, unterschiedlich viel RAM unterschiedlicher Ausstattung (WLan,GPS,Kamera,..) usw.

Eine App die trotzdem überall das "beste" aus dem vorhandenen machen soll erfordert noch einiges mehr an Hirnschmalz

Wenn die geforderte App über ein "Hello world" hinausgehen  und einen halbwegs praktischen Nutzen haben soll dann sollte man also viel Zeit einplanen.

Antwort bewerten Vielen Dank für Deine Bewertung

Wenn du es lernen möchtest, proffessionelle Hilfe gibts in einem Studium. Wenn du dir alles nur mal ansehen willst, lade dir Android Studio für den Pc herunter und fang an!

Antwort bewerten Vielen Dank für Deine Bewertung

udacity.com die bieten zahlreiche kostenfreie und kostenpflichtige Onlienkurse an, auch zum Thema Android.

Antwort bewerten Vielen Dank für Deine Bewertung
Antwort bewerten Vielen Dank für Deine Bewertung
JuicyLuisian 04.02.2016, 11:16

Ob die 40€ gerechtfertigt sind mal dahingestellt, aber das Videotraining ist sehr gut. Wenn du dich durch kostenlose Internettutorials liest, wirst du dir das gleiche Wissen aneignen können, aber mit dem Video lernst du das definitiv schneller. (Du benötigst dann auch keine weiteren Investitionen mehr.)

0

Ja, habe ich. Jedoch mit xamarin. Fragen?

Antwort bewerten Vielen Dank für Deine Bewertung
swobocop 04.02.2016, 10:33

ist es denn Kostenlos? und wenn ich das richtig sehe muss man mit C# programmieren oder?

0

Was möchtest Du wissen?