Empfohlene Programme (Achtung Subjektiv - für dieses Punkt akzeptiere ich keine PMs da ich bereits angekündigt habe dass es hier um meine Meinung geht!)
Erst mal guten Abend / Morgen / Mittag, wann auch immer ihr diesen Thread lest.
Da hier im Forum immer öfters die gleichen Fragen landen, welche schon mit Grundkenntnissen zu beantworten sind, dachte ich mir, dass ein kleiner Informationsthread niemandem hier schaden wird.
Mein Ziel ist, das der User nach dem lesen dieses Threads über die grundlegenden Dinge wie den Systemaufbau, die geläufigsten Begriffe und kleinere Kniffe Bescheid weiß.
Der Thread wurde extra so aufgebaut, dass die Gliederung es dem fortgeschrittenen Leser möglich macht nur bestimmte Punkte zu lesen und dem absoluten Anfänger eine Möglichkeit gibt sich in das Thema von Anfang an einzulesen.
Nun aber genug zur Einleitung, ich wünsche allen Usern die diesen Thread lesen viel Spaß und hoffe das ihr den Thread als informativ anseht.
**************************************
2. Über Android
**************************************
Zuerst einmal muss folgendes klar gestellt werden:
Auch wenn viele es denken, Android ist keine Entwicklung von Google, sondern von der Open Handset Alliance, welche aus Mobiltelefon Herstellern, Netzbetreibern, Softwaren-Firmen etc. besteht.
Wenn von Android gesprochen wird handelt es sich natürlich nicht um die Roboter aus Star Wars welche wie eine Mülltonne aussehen, sondern ein open-source Betriebssystem für Mobiltelefone.
Das Tageslicht erblickte Android im Jahre 2008 mit der Veröffentlichung des T-Mobile Dreams / HTC G1s.
Zu den Systemanforderungen von Android kann man nicht viel sagen:
Es ist ein System welches auf minimaler Hardware läuft und als einzige Bedingung die Verfügbarkeit von 3 Hardware Tasten hat: „Zurück“, „Home“ und „Menü“.
Im Gegensatz zu Systemen der Konkurrenz (iOS, Symbian, Bada, Windows Phone, …) ist Android von Anfang an sehr offen gestaltet und bietet durch den modularen Aufbau die Möglichkeit die Bestandteile des Systems durch andere auszutauschen, z.B. den SMS-Client, die Anruf-Applikation etc.
Am meisten demonstriert wird dies durch die verschiedenen Oberflächen welche die Mobiltelefon Hersteller bieten.
Um hier ein paar Beispiele noch zu nennen:
HTC Sense (HTC), TouchWiz (Samsung), MotoBlur (Motorola) und Media-/TimeScape (Sony Ericsson).
Dies sollten nun aber genug über Android sein, weshalb wir zum nächsten Punkt fortfahren.
Ein kompletter Changelog wäre zu lange, weswegen ich mir einfach mal Erlaube den Changelog von [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] ein bisschen gestaltungsmäßig anzupassen und diesen zu verwenden.
1.1 (10. Februar 2009) Smartphone
Speichern von MMS-Anhängen
1.5 (30. April 2009) Smartphone
automatischer Wechsel zwischen Hoch- und Querformat
Bildschirm-Tastatur
Aufnahme und Wiedergabe von Videos
automatisches Verbinden und Stereo für Bluetooth
weitere Sprachen neben Englisch und Deutsch
1.6 (15. September 2009) Smartphone
Virtual Private Networks konfigurierbar
differenzierte Energieverbrauchssteuerung
Suchfunktion quellenübergreifend und selbstoptimierend
Text-to-Speech, Gestenerkennung und mehr als eine Bildschirmauflösung
2.0 / 2.1 (12. Januar 2010) Smartphone
Digitalzoom und Unterstützung von Blitzlicht
Unterstützung von Microsoft Exchange
Bluetooth 2.1
animierte Hintergrundbilder
Informationen zur Signalstärke
Erweiterungen von Webkit (HTML5-Unterstützungen, WebStorage, Geolocation, Video …)
IPv6-Unterstützung
2.2 (20. Mai 2010) Smartphone
Linux-Kernel 2.6.32, der weniger Arbeitsspeicher benötigt
Verwendung von Arbeitsspeicher, der größer als die bisher nutzbaren 256 MByte ist.
JIT-Compiler, Erweiterungen für OpenGL ES 2.0, Unterstützung von Flash 10.1
Tethering
Speicherbarkeit von Apps auf der SD-Karte (App2SD)
Android Cloud to Device Messaging Framework: Möglichkeit, PUSH in die eigenen
Anwendungen zu implementieren.
Bluetooth-Sprachwahl
2.2.1 - 2.2.2 (Januar 2011) Smartphone
Bugfixes
Fix für SMS-Bug (parallel zu 2.3.2)
2.3 (6. Dezember 2010) Smartphone
Linux-Kernel 2.6.35.7
Unterstützung von WebM
Unterstützung von HTML5 Audio
Unterstützung von Google TV
Unterstützung von Near Field Communication
Parallele Garbage Collection für ruckelfreiere Animationen
verbesserte Integration von sozialen Netzwerken
Unterstützung von Gyroskopen (nicht zu verwechseln mit Bewegungssensoren) und
anderen Sensoren (u.a. Barometer, Schwerkraftsensor)
integrierter SIP-Client für VoIP
integrierter Downloadmanager
Unterstützung des Ext4-Dateisystems
2.3.1 - 2.3.2 (Januar 2011) Smartphone
Bugfixes
Update auf Google Maps 5.0
Fix für SMS-Bug
2.3.3 (23. Februar 2011) Smartphone
Dual-Core-Unterstützung
Unterstützung von Dual-Core-Apps auf Single-Core-Geräten
verbesserte Unterstützung der NFC-Technik
verbesserte Bluetooth-Unterstützung
kleinere Verbesserungen
2.3.4 - 2.3.7 (20. September 2011) Smartphone
Video- und Voice-Chat mit Google Talk
verschlüsselte Übertragung von Terminen und Kontakten
Bugfixes
4G Fixes
Tweaks und voller Support für den NFC Transceiver
Voice Search fix
3.0 (23. Februar 2011) Tablet
benutzerfreundlichere Oberfläche
verbesserte Unterstützung für Tablet-Computer
Google Talk mit Videotelefonie
neue Browser-Funktionen: Synchronisierung der Lesezeichen mit Google Chrome,
Tabs, automatisches Ausfüllen von Formularen und Inkognito-Modus beim Surfen
3.1 (10. Mai 2011) Tablet
USB-Host-Modus
Verbesserungen an Benutzeroberfläche und Widgets
Verbesserungen und Erweiterungen am Browser
eigene Proxyeinstellungen für jedes WLAN
3.2 (16. Juli 2011) Tablet
verbesserte Anpassung an Tablet-Computer mit einer Bildschirmdiagonale von 7 Zoll
neuer Kompatibilitätsmodus zur besseren Darstellung von Apps, die für kleinere Bildschirmauflösungen programmiert wurden
"Media sync from SD card": Ermöglicht Apps den direkten Zugriff auf Multimedia-Dateien der eingelegten SD-Karte z. B. zur Synchronisation
erweiterte CPU-Hardware-Unterstützung
Funktionen für Entwickler, um ihre Apps besser an verschiedene Bildschirmauflösungen anpassen zu können
3.2.1 (20. September 2011) Tablet
Bugfixes
4.0 (19. Oktober 2011) Tablet + Smartphone
Zusammenführung der Entwicklungslinien 2.x und 3.x und Google TV.
verbessertes Multitasking.
NFC für Kontakte, Daten und Links mit „Android Beam“.
Entsperren per Gesichtserkennung.
verbesserter Browser, verbesserte Google Mail-, Galerie- und Kalender-App
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] Klicken für größere Version
1. Das Gerüst
Viele von euch werden das Bild nun mit einem "Hä?" Blick ansehen, deswegen hier eine kleine und grundlegende Erklärung:
Der Kern des Android Systems bildet der (Linux-)Kernel, welcher für die Zugriffe auf die Hardware und verschiedene Verwaltungsdienste zuständig ist, und die virtuelle Java Maschine, auch Dalvik genannt.
Da es jedoch einfach sein sollte, und vor allem sicher, enthält das Android System noch Bibliotheken.
Diese sollten den Programmierern unter uns ein Begriff sein.
Bibliotheken sind einfach sozusagen "Dokumente" welche die grundlegenden Befehle enthalten und somit den Zugriff vereinfachen sollen.
Der nächste Bestandteil, auch Anwendungsrahmen genannt, ist eine Schicht, in Java geschrieben, die die Interaktion zwischen Hardware und Software vereinfachen soll.
Und zu guter letzt kommen wir zu der für Nutzer sichtbaren Schicht: Die Anwendungsschicht.
Zu der muss ich aber sicher nichts sagen, da die 3 Begriffe schon selbst erklärend sind.
2. Die Sandbox
Euch ist doch sicher schon einmal die Liste der Berechtigungen aufgefallen sobald ihr ein Programm installiert.
Wofür diese gut sind sollte klar sein, doch wie funktionieren sie?
Jedes Android Programm wird in einer Sandbox, d.h. in einem eigenen "System" ausgeführt.
Diese Sandbox schränkt oder gewährt dem Programm die Zugriffsrechte, womit sicher gestellt wird, dass das Programm nicht in unbefugte Regionen zugreifen kann.
Weiter möchte ich auch nicht darauf eingehen, falls sich jedoch Leute für dieses Thema mehr interessieren kann ich ihnen [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] Artikel ans Herz legen.
Leute, wenn ihr einen Jailbreak wollt, dann kauft euch ein Apple Produkt und fragt hier nicht wie man einen Jailbreak macht, danke!
Bei Android gibt es ohnehin schon viele Rechte, wer jedoch noch mehr Rechte will, genauer gesagt, das Recht will die System Partition zu bearbeiten, der benötigt einen anderen Account.
Jeder Windows Benutzer sollte den Administrator kennen, für Mac / Linux Benutzer ist der Begriff „root“ ohnehin schon bekannt.
Die Tools arbeiten nicht, wie viele denken, indem sie bestimmte Berechtigungen ändern oder einem selbst mehr Rechte geben, sondern schalten den Root Benutzer frei und verwenden diesen für vollen Zugriff auf das System.
Doch wofür ist dieser Root dann sinnvoll, wenn Android ohnehin schon so viele Berechtigungen frei gibt?
Ganz einfach: Zum Spaß, zum Verbessern, zum Spielen.
Das komplette Theme ändern, Übertakten, Untertakten, Custom Roms und vieles mehr.
Das alles wäre ohne Root nicht möglich.
Nun zu der Frage: Wie rootet man?
Das kann man nicht allgemein sagen, das ist je nach Telefon unterschiedlich.
Während die meisten sich mit Programmen wie z4root und SuperOneClick begnügen, gibt es auch stärkere Schutzmaßnahmen.
Hier als Beispiel HTC, welche eine extra Schaltung enthalten um den Speicher in den „Nur Lese“ Modus setzt.
Jedoch mehr speziell zu HTC in einem anderen Thema.
Ihr wollt immer noch rooten?
Öffnet Google, sucht nach SuperOneClick (mein Favorit) und schaut nach ob euer Telefon unterstützt wird.
Wenn ja, auf an die Arbeit.
Wenn nein, dann öffnet wieder Google und sucht weiter.
Root ist leicht zu entfernen: Einfachein Providerrom flashen.
Nächstes Thema, nächste Lektion.
Dieses mal die erweiterten Sicherheitsfunktion von HTC.
Security-ON (S-ON) und Security-OFF (S-OFF).
Genauer gesagt handelt es sich hierbei um eine elektronische Schaltung, welche durch eine Variable (auch Flag genannt) geregelt wird.
Der genaue Speicherort der Variable ist bei jedem Telefon unterschiedlich, jedoch befindet es sich immer im Radio.
Während das Flag aktiv ist befindet sich das Telefon im S-ON Modus und lässt nur lesezugriff auf den Speicher zu.
Wird dieses Flag deaktiviert wird der Chip in den Schreib-/Lesemodus gebracht und die Möglichkeit zu rooten oder eigene Systeme zu installieren ist nun gegeben.
Was sagt uns dies?
Wollen wir rooten, müssen wir zuerst das Flag deaktivieren.
Wir können selbstverständlich auch rooten ohne es zu deaktivieren, jedoch sind dann alle Änderungen am System nur temporär und gehen mit dem nächsten Neustart verloren.
Um ein Telefon in den Schreibmodus zu bringen gibt es momentan eigentlich nur ein Programm: Revolutionary.
Dies zu finden ist eine Leichtigkeit weswegen ich nun auf Google verweisen möchte.
Bei dem Bootloader, am besten vergleichbar mit einem BIOS eines Computers, handelt es sich um die primitivste aber wichtigste Systemebene, da er für jedes Update am Betriebssystem zuständig ist.
Während die meisten Telefone über eine Bootloader verfügen der entweder Locked oder Unlocked ist, teilt sich der HTC Bootloader nochmals auf.
Dort gibt es den Ship (S-ON / S-OFF) und den Eng(ineering) (S-ON / S-OFF) Bootloader.
Während sich der Ship Bootloader auf die simplen Funktionen (eine einzelne Zip zum updaten des Systems) beschränkt verfügt der Engineering Bootloader über die sog. Fastboot Funktion, welche einem Nutzer erlaubt die Teile des Systemes seperat über eine USB Verbindung zu flashen ohne die jeweilige Zip-Datei zu haben.
Aber wen interessiert schon der Bootloader, wird ohnehin total vernachlässigt.
Er tut mir echt Leid.
Die Recovery wird wohl die einzigste alternative Systemebene von Android sein die ihr je benutzen werdet.
Während die Standard Recovery nur die Funktion besitzt das System zurück zu setzen, bietet eine Custom Recovery weit mehr Funktionen, dabei u.a.:
Roms flashen: Mehr dazu im Custom Rom Spoiler
Nandroid Backups: Hierbei handelt es sich um ein Backup des kompletten Systems, inkl. Einstellungen, Programmen, SMS und... einfach alles.
Wipes: Hierbei handelt es sich um das leeren einer Partition. Sollte man nicht aus langeweile machen.
Die bekanntesten Recoveries sollten hier die 4ext-Recovery und die Clockwork-Mod-Recovery sein.
Es ist ratsam dass ihr das komplette System löscht/wiped bevor ihr ein neues Rom installiert.
Wenn ihr dies nicht tut kann es zu seltsamen Fehlern und erhöhtem Akku-Verbrauch kommen.
Das für die meisten wohl wichtigste Thema.
Bei Custom Roms handelt es sich um Android Versionen, welche zwar i.d.R. auf offizielen Quellen basierne, jedoch von sogenannten "Rom-Cookers" (Roms sind nicht zum Essen!) erweitert und verbessert wurden im Sinne von neuen Kernels (übertakten und andere Verbesserungen), aktualisierte Programme, aktualisierte Oberfläche, etc.
Ein Rom wird immer nach den Vorstellungen des Kochs erstellt, weswegen es oft ein bisschen dauern kann bis man das perfekte Rom für einen selbst findet.
Die bekanntesten Roms sind hierbei wohl definitiv:
Cyanogenmod: Ein Rom das sich sehr stark am Android Code der Open Handset Alliance orientiert und diesen verbessert, jedoch im Gegensatz zu den Herstellern keine besondere Oberfläche einführt und das Rom deswegen klein, frei von Müll und einfach nur schnell hält.
MIUI: Das m.M.n. interessanteste Rom, es handelt sich hierbei nicht nur um ein "kleines" Android Rom, sondern um ein Android Rom dessen Ziel es ist, die Oberfläche des iPhones zu imitieren.
Dazu muss ich zugeben, es ist schon bereits sehr fortgeschritten und hat eine sehr gelungene Oberfläche mit vielen Zusatzprogrammen, welche jedoch alle selbstgemacht wurden, daher erhält dieses Rom meinen größten Respekt.
Roms werden im Normalfall immer über die Recovery geflasht, jedoch gibt es diverse Ausnahmen wie z.B. Netzbetreiber-Roms.
Zu beachten: Man sollte nur Roms nehmen die auch für das eigene Telefon sind.
Das flashen von Roms welche von einem anderen Telefon stammen kann bis zur Zerstörung des Telefons führen!
**************************************
10. Radio
**************************************
Der Radio gehört neben dem Rom, dem Bootloader und der Recovery zu den wichtigsten Teilen des Android-Systems.
Es ist der Teil der Firmware, welcher für jegliche Art der Kommunikation (Bluetooth, GPS, Mobilfunk, W-Lan ...) zuständig ist.
Kurz gesagt: Kein Radio, kein Telefon.
Angesteuert wird das Radio über den Kernel und eine sog. RIL (Radio-Interface-Layer) Datei.
Jedes Rom enthält eine RIL-Datei, weswegen bei den meisten Roms ein empfohlenes Radio dabei ist.
Dieses Radio sollte auch genutzt werden für optimalen Empfang und Akku-Verhältnis, jedoch ist es auch möglich eine eigene RIL-Datei nach zu flashen.
Der Kernel ist im Endeffekt nichts anderes als ein Linux-Kernel. Er ist zuständig für die Kommunikation zwischen System und Hardware.
Die Hauptbestandteile, welche auch auf dem Bild bei Punkt 4 zu sehen sind, sind:
Bildschirm Treiber
Kamera Treiber
Flash-Speicher Treiber
IPC Treiber
Tastatur-Treiber
W-LAN Treiber
Audio-Treiber
Energiesteuerung
Hier ist anzumerken, das flashen eines Kernels für ein anderes Gerätes ist höchst gefährlich.
Durch die falsche Ansteuerung der Hardware kann es nur eine Frage von Sekunden sein bevor die Hardware das zeitliche gesegnet hat.
Hier gibt es mal wieder viele Arten wie das geht, da ich jedoch von den gecrackten Märkten und ähnlichem nichts halte erläutere ich nur die Methode die ich auch nutze:
Man nehme eine Seite auf der es gecrackte Apps gibt, z.B., wer hätte es gedacht, myGully.com
Die .apk Datei herrunterladen
Auf die Speicherkarte verschieben
Mit einem Datei-Explorer (z.B. Estrongs Datei Explorer) auf dem Handy öffnen
Installieren
Fertig
Da im Gegensatz zu Apple und Symbian geräten weder signierung noch Jailbreak erforderlich sind, ist dies bei Android eine einfache und schnelle Sache, welche auch nicht mehr Erklärungsbedarf hat.
Hier mal eine kleine Kurzform wie der Taskmanager funktioniert, ich hoffe es ist einigermaßen verständlich, wusste nicht wie ich es sonst beschreiben soll:
Code:
1. Programm wird gestartet
2. Aufruf der onCreate() Funktion
3. Aufruf der onStart() Funktion
4. Aufruf der onResume() Funktion
Nun läuft die Anwendung bis eine andere Anwendung gestartet wird.
Wenn dies geschieht:
5. Aufruf der onPause() Funktion
Programm wird wieder aufgerufen: Zurück zu Punkt 4
Anderes Programm benötigt Arbeitsspeicher: Vor zu Punkt 6, dann ohne Wartezeit zu Punkt 7
Programm bleibt für längere Zeit inaktiv:
6. Aufruf der onStop() Funktion - Programm ist noch im Speicher, jedoch nicht vollständig beendet.
Programm wird wieder aufgerufen: Aufruf der onRestart() Funktion, welche danach zu Punkt 3 springt
Programm wird weitere Zeit nicht genutzt:
7. Aufruf der onDestroy() Funktion - Programm ist nun vollständig geschlossen.
Sobald das Programm geschlossen wurde, sei es durch inaktivität oder Speichermangel, wird wieder bei Punkt 1 begonnen.
Wie ihr seht, Taskkiller sind eigentlich total unnötig.
Android beherrscht bereits sehr gute Methoden seinen Speicher zu verwalten.
Wollt ihr dennoch daran rumpfuschen, dann empfehle ich euch keine Taskkiller, sondern Programme wie AutoKiller Memory Optimizer um den internen Taskkiller zu konfigurieren, oder "SuperPower", was eine komplette neukonfiguration inkl. mehr Funktionen für den Android internen Taskmanager bietet.
Der Post ist natürlich nicht perfekt, aber ich hoffe es hilft einigen Leuten hier sich zu recht zu finden.
Kann ja nicht sein, dass dauernd Leute fragen wie man Apps installiert, obwohl dies das einfachste ist.
Ihr könnt wirklich gerne eure Kritik und Vorschläge per PM senden, ich bin für alles dankbar.
Ich denke, ich habe nun genug eurer Zeit gestohlen. ;)
Falls ihr den ganzen Post gelesen habt:
Respekt & Danke. :D
Buddhathecook
31.10.11 09:31
Keine Posts in diesem Thread! Wer einen Verbesserungsvorschlag hat kann diesen per PN stellen.!!
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:49 Uhr.