Allgemeine Fragen zum Development

  • 9 Antworten
  • Letztes Antwortdatum
C

chevallier

Neues Mitglied
0
Hallo Leute,

Android habe ich bisher nur als Otto-Normal-User genutzt. Ich kenne mich gut mit Linux und Programmierung aus (C, Python). Nun möchte ich mehr über Android erfahren um Apps programmieren zu können. Ich weiss, dass ich dafür Java benötige, aber erst einmal möchte ich mir einen genaueren Einblick verschaffen wie das OS so tickt, denn Android unterscheidet sich schon etwas von einem normalen Linux-Desktop-OS (denke ich mal) - was ist der beste Ansatzpunkt?
Könnt Ihr mir irgend welche Bücher empfehlen? (Habe bis jetzt nicht viel Lektüre finden können)
Ist ADB und die ADB-Shell ein guter Start um das OS zu erkunden?

Wäre nett, wenn Ihr mir sagen könntet wie ich am besten starte.

VIELEN DANK.
 
Also auch wenn ich denke dass es nicht so wichtig ist wie das Android OS genau funktioniert könntest du ja diese paar links vllt nützlich finden:

Androids Source Site:
The Android Source Code | Android Open Source Project

Linux Wiki
Android Kernel Features - eLinux.org

Aus unserem Forum von u.k-f.:
Vom Android-NOOB zum Kernel-Entwickler und ROM-Portierer

Ich suche auch immer dann nach Studienarbeiten wenn mich ein Thema sehr interressiert. Das habe ichauf die schnelle mal für dich rausgesucht:
https://os.itec.kit.edu/downloads/sa_2010_braehler-stefan_android-architecture.pdf

Also ist etwas leichtgewichtig aber auch ein guter Einstieg soweit ich das überfliegen konnte. Ist auf jeden Fall lesenswert und gibt dir einen guten und soliden Einstieg in Android

Ich finde aber eine quasi "Bottom-Up" herangehensweise weniger Produktiv als sich lieber "Top-Down" mäßig von Oben runterzuarbeiten. Aber falls du es für dich besser hältst auch gut.
 
  • Danke
Reaktionen: chevallier
Wie fängt man am besten an, Android-SDK und CLI?

Wie gesagt, will mich gut mit Android auskennen und nach einiger Einarbeitung anfangen Apps zu programmieren.
 
Was möchtest du denn mit Android anstellen? Apps oder OS customization? Möchtest du dich mit dem Betriebssystem Android auskennen oder die Android API kennen und benutzen können und Anwendungen zu entwickeln?

Du möchtest zwei Dinge wie ich herauslese: Apps programmieren und das Android OS kapieren.
Für das eine musst du einfach nur mal Java lernen und dann dich mit der Android API und der Dokumentation vertraut machen.

Das andere ist low-level Zeug bei dem ich dir nicht helfen kann...

Der Android Source Code steht ja offen im Internet zur Verfügung zum Beispiel. Aber es ist ne Menge. Alleine die View Klasse hat 50.000 Zeilen...Ich habe versucht da mal den workflow der OnClickListener zu verstehen ein eiziges hin und hergespringe im Code...

Also wie in der Informatik üblich mach dir klar was für ein Problem du lösen willst und dann gehe diesen Weg. Wenn du Apps entwickeln möchtest ist es vor allem wichtig Java gut zu beherrschen und die API's aus dem Framework in der offiziellen Dokumentation zu studieren...
 
Hi Jaiel, Danke für die Info. Ich sehe kein großes Problem bezüglich Java, da ich C und Python (OOP) gut beherrsche - in Java werde ich mich schon einarbeiten. Aber bezüglich der App-Programmierung reden alle von der Android-SDK - muss ich diese erst einmal installieren und kennenlernen, oder ist der Weg ein anderer? Ich meine wie ist die Herangehensweise? Ich kann ja nicht (oder nicht so einfach) Android auf meinem Desktop-OS laufen lassen... hoffe du verstehst was ich meine. Welche Entwicklungsumgebung nutzt man am besten?
 
Hallo chevallier,

ich würde an Deiner Stelle würde trotzdem vorher in Ruhe Java anschauen, gerade weil Du aus der Phyton - Ecke kommst. Gerade in Bereich OOP gibt es größere Unterschiede (Dekonstruktoren, Mehrfachvererbung, Methoden und Funktionen als Objekte sind in Java anders umgesetzt). Und C - Kenntnisse sind nicht gerade förderlich, zwar ist die Syntax gleich, aber unter der Haube gibt es elementare Unterschiede.
 
Zuletzt bearbeitet:
markus.tullius schrieb:
...Dekonstruktoren, Mehrfachvererbung (...) sind in Java anders umgesetzt
bzw. nicht vorhanden :)
 
Nur Dekonstruktoren (gekapselt - kein Zugriff). Der andere Foo Bar (Mehrfachvererbung) geht. :) Ist eben nur anders umgesetzt, für etwas müssen die Datentypen ja gut sein. ;)
 
Stimmt, Interfaces bieten da so eine ähnliche Möglichkeit
 
Zurück
Oben Unten