How2: Android Custom Rom erstellen

Helix

Helix

Dauergast
323
Die Community, die hinter Android steht, ist gewaltig. Dank des Open Source Daseins von Googles Android OS konnte sich innerhalb von kürzester Zeit eine wahre Gemeinschaft von findigen Hackern, Bastlern und Modder‘n zusammen finden. Die einen bringen den Geräten dank Root Zugriff neue Funktionen wie das Übertakten des Prozessors oder jegliche Bluetooth-Verbindungen bei, während andere sich mehr um die Optik des System oder eine gute Bedienung kümmern.
Da in jedem Interessiertem ein potenzieller Bastler steckt, habe ich mich entschlossen, einen weiteren Teil meines Wissens in Bits und Bytes zu fassen, um es leicht verständlich für jedermann zugänglich zu machen.

Was wird benötigt?
- Das Android SDK
- Dieses Paket mit dem Signingtool
- Ein Rom als Ausgangsbasis
- Zip Programm wie WinRar, WinZip 7zip oder ähnlich

Installation des SDK
Nach dem Download des SDK’s wird gefragt, welche Teile man herunterladen/verwenden möchte. Hier muss man die Google APIs, die USB Treiber sowie die Android Tools für die jeweilige Androidplattform auswählen, in unserem Falle also 1.5 und/oder 2.1.
Mit Bestätigung der Auswahl beginnt das SDK mit dem Download der Dateien, welche ein Ausmaß von bis zu 2 Gigabyte verursachen. Genau kann ich die Größe nicht beziffern, da ich zur App- Entwicklung alle Pakete installiert habe. Wenn die Installation abgeschlossen ist, hat man die Hälfte schon geschafft.

Installation des Signingtools
Das Paket AndroidSign enthält vier Dateien, wovon später nur noch eine interessant sein wird, der Rest dient nur der Installation.
Hierzu starten wir die autosign.bat Datei, welche eine Dos-Konsole öffnet. Nach dem Start gibt es sieben Optionen zur Auswahl, welche über eine Zahleneingabe bedient werden.
Doch gehen wir chronologisch vor:
Mit einer „1“ binden wir das Signingtool in das SDK ein, beziehungsweise machen es möglich, Teile des SDK zu nutzten. Nach der Bestätigung mit „Enter“ springt die Kommandozeile runter, und zu sehen ist eine große Ansammlung von Pfaddateien. Da wir einfach davon ausgehen, dass diese Pfade bei der ersten Installation des SDK richtig gesetzte wurden, bestätigen wir die Frage „ Is this acceptable? Yes/no?“ mit der Eingabe von „yes“ und bestätigen dies mit „Enter“.
Nun zeigt das Tool wieder die ursprüngliche Auswahlmenü an, worin wir auch die Punkte 2 & 3 nach dem gerade genannten Schema abarbeiten.
Hiermit ist die Installation des Signingtools geschafft, mit der Eingabe von einer „7“ oder dem Klick auf das „Schließen Kreuzchen“ schließen wir das Programm, da es gerade nicht mehr benötigt wird.

Wichtig: Das SDK sowie das Signingtool installieren sich in den Ordnern, wo sie abgelegt werden, wenn dies nicht anders ausgewählt wird. Sollte jemand das SDk oder den Signer verschieben, müssen die letzten Schritte im Signer wiederholt werden.

Kommen wir nun zum eigentlichen Custom Rom. Wie der Name schon sagt, handelt es sich hierbei um eine individuelle Anpassung eines vorhandenen Roms an die eigenen Bedürfnisse.
Doch erst einmal grundsätzliches zur Struktur eines Android Roms. Hierbei muss erwähnt werden, das ich Windows als Entwicklungsumgebung voraussetzte, da Linux gerade für bastelfreudige Anfänger schnell ein Hindernis darstellt. Auch erwähnt werden muss an dieser Stelle, das eine volle Bearbeitung des Roms unter Windows nicht möglich ist.
Um die spätere Entwicklung zu beschleunigen, erstellen wir direkt auf dem primären Laufwerk, auf dem auch das Betriebssystem installiert ist, einen neuen Ordner mit möglich kurzem Namen(Rom bietet sich an dieser Stelle hervorragend an ;)).
In gerade erstellten Ordner kopieren wir nun das zu Bearbeitende Rom. Mit einem Rechtsklick entpacken wir das Rom in einen gleichnamigen Ordner, um bei der paralellen Entwicklung mehrerer Roms den Überblick zu behalten.
Beim Öffnen des Ordners finden wir drei Ordner sowie eine Imagedatei vor.
- Data (Ordner)
- META-INF (Ordner)
- System (Ordner)
- Boot (Imagedatei)
Bevor mir jetzt mit der eigentlichen Bearbeitung beginnen, noch eine kurze Erläuterung zu der Funktion der jeweiligen Ordner.
- Data
Dieser Ordner enthält Anwendungen, welche in die Datenpartition installiert werden. Diese können deinstalliert werden!

- META-INF
Dieser Ordner ist für die Verifikation während der Installation notwendig und enthält die wichtige Update Datei sowie Liste mit jeder im Rom enthaltenen Datei.

- System
Wie der Name schon sagt, steckt hier das eigentliche Betriebssystem drin. Da es sich hier um ein Anfängertorturial handelt, beschränke ich mich auf wenige entscheidende Ordner und Dateien.

- Die Boot.img. Diese Imagedatei enthält den eigentlichen Kernel, als das Androide Herzen wenn man so will. Auch hiervon werde ich im folgenden nicht eingehen, es soll ja eine einfach Grundlage werden, nicht eine vollständige Fachsammlung.

Doch beginnen wir bei der Bearbeitung im „Data“ Ordner. Hier lagern verschiedene Apps, die nach eigenem Belieben getauscht werden können, und dank Apps2SD auf der großen Speicherkarte landen. Gerade für große Anwendungen wie Google Maps oder große Tastatur wie die HTC_IME oder Touchpal quasi ein Muss.
Die .apk Dateien beziehen wir aus dem Internet, aus anderen Roms oder aus eigner Entwicklung. Alles was .apk ist, können wir hier einbinden, vom Browser bis zur Taschenlampen App. Wichtig bei Experimenten: Die Anwendungen in der Datenpartition können über den Anwendungsmanager wieder deinstalliert werden.

Kommen wir nun zum Ordner „System“. Hier navigieren wir in den sich darin befindlichen „app“ Ordner, die anderen lassen wir noch einmal außer Acht.
Im App Ordner angekommen, finden wir die gleichen Strukturen wie im Data Ordner. Anwendungen können gelöscht, eingefügt oder nach Belieben getauscht werden. Mit einigen Einschränkungen. So sind im „app“ Ordner System-kritische Dateien enthalten, deren Deinstallation fatale Folgen auf die Stabilität oder überhaupt die Bootfähigkeit haben. Hier sollte man nur bekannte Apps deinstallieren, oder sich ausreichend informieren. Hier sind einige wichtige Apps in einer Tabelle eingetragen, mit Funktion, Beschreibung und Deinstallationsmöglichkeit oder nicht. Zum Anfang wäre es möglich, einige .apk Anwendungen wie den Musikplayer oder die Gallery in die „Data“ Partition, spricht den gleichnamigen Ordner zu verschieben und anders herum. Schlussendlich sollte man sich daran halten, keine der beiden Partitionen zu überladen, ein gesunder Mittelweg ist die Lösung, wobei die „Data“ Partition mehr ab kann als der Systembereich.
Hierbei sei Erwähnt, dass das Einbetten eines Launchers wie LauncherPRO, ADW oder wie auch immer einer tieferen Integration bedarf, als einer Einfügung in einen der beiden Ordner. Das Ergebnis einer solchen Aktion ist ein schwarzer Hintergrund mit aktiver Statusbar.
Hiermit wären die ersten Veränderungen am Rom abgeschlossen, und auch wenn es nur kleine Änderungen sind, sie können bei gezieltem Einsatz eine hohe Leistung erbringen.
Nun gehen wir zurück in den Überordner „System“ und navigieren hier in „Media“ -> „Audio“. Auch hier finden wir vier Unterordner, deren Funktion wohl selbsterklärt ist.
- „Alarms“
- „Notifications“
- „Ringtones“
- „Ui“
Diese Ordner enthalten verschiedene Töne je nach Zweck, erhalten solltet ihr immer die Standard_blablablaba Dateien, oder Ereignistöne wie „F1_New_SMS“ o.ä. den Rest an Tönen könnt ihr gefahrlos löschen oder durch eigene Vorstellungen erweitern. Ist alles fertig, gehen wir wieder in den Eingangsordner mit den 3 Ordnern (Data,Meta-inf und System). Nun geht es den Meta-Inf Ordner um das Rom mit neuen „Inhaltslisten“ auszustatten. Hierzu löschen wir die drei Textdatein:
- Cert.RSA
- Cert.SF
- Manifest.MF
Der verbleibende Ordner muss erhalten bleiben, da er das UpdateScript zur Aktualisierung des Roms enthält. Mit dieser Aktion seit ihr fast am Ende angelangt, es steht nun der Umgang mit dem Signer bevor.

Nachdem nun alle Änderungen abgeschlossen sind, gehen wir wieder in den alles beinhaltenden Ordner und markieren die drei Ordner sowie die Boot.img mit einem Rahmen. Jetzt mit einem Rechtsklick die Dateien zu einem Archiv hinzufügen, Namen eingeben und WICHTIG!, die Endung auf .ZIP umstellen. (Ich beziehe mich auf WinRar, da es hierfür mit am besten geeignet ist).
Nach dem Erstellen des Zippakets, kopieren wir es eine Ordnerebene höher, als direkt in den zu Anfang erstellten Ordner, ich nenne ich jetzt „Rom“. Jetzt starten wir die Anwendung AndroidSign wieder, und sehe die bekannte DOS Konsole. Hier angekommen wählen wir mit der Eingabe einer (4) die Signierung eines einzelnen Paketes an.
Nun werden wir dazu aufgefordert, den vollständigen Pfad anzugeben, was denn wie folgt aussieht/aussehen kann:
C:\Rom\Helix.zip
Die kommende Anfrage beantworten wir mit einem eingetipptem
„yes“
Und der Signer beginnt seinen Dienst. Mit der Meldung: „Successfully signed if no Errors above“ oder so meldet der Signer die Fertigstellung des Roms an. Nun können wir das Rom auf die Speicherkarte ziehen und per Recoverymodus flashen.


*Änderungen vorbehalten*


Viel Spaß mit dem ersten eigenen Rom, die Anleitung wird demnächst noch wachsen, hatte nur gerade Lust mehr :)
 
  • Danke
Reaktionen: DerEntwickler, xXB0URN3Xx, sudodevil und 60 andere
*Reserviert*
 
  • Danke
Reaktionen: vikblau, Gizl, Platti und eine weitere Person
Grüße...,

also Ich finde es total Geil, dass du für Leute wie mich, so etwas machst.
Mich interessiert die ganze Geschichte total und es macht es wesentlich einfacher so bissl besser den Einstieg in die ganzen Zusammenhänge usw. zufinden. Freu mich schon auf den nexten How2.
 
Ohne die Anleitung hätte ich es nie hinbekommen, die Android-Tastatur mit deutschen Wortvorschlägen zu integrieren - nebenbei konnte ich auch noch gleich das Hintergrundbild vom FLB-Mod in das alte schwarze von T-Mobile ändern und das AK Notepad direkt verfügbar machen, um meinen WLAN-Schlüssel kopieren zu können.
Vielen Dank!
 
Dafür hab ich es geschrieben :)

Mache bald noch ein kleines Update wie man dem eigenen Rom einen Namen geben kann, und Kleinigkeiten verändert.


Passt es denn von der Lesbarkeit/Verständlichkeit?
Auf Anhieb funktioniert?



Ich will das Pulse ja vorantreiben, da muss ich halt mein Wissen teilen damit alle was von haben :)
 
Diesmal zwar nicht der erste aber hier bin ich ^^
Beim SDk Tool bekommt der keine Verbindung zu der Seite wo es die Packages gibt ?! Kennst du ne Lösung ?
 
Die Anleitung war sehr verständlich - lediglich bei der Installation und Konfiguration der zwei Programme gab es zwei kleinere Probleme, die aber einfach zu lösen sind (das eine Problem entspricht deinem, VitaminC):

- Beim SDK Setup gab es einen Fehler, so dass er keine Downloadmöglichkeiten angezeigt hat. Wenn man unter "Settings" von dem Setup "Force https:// ... soruces to be fetsched using http:// ..." anhäkelt, funktioniert danach alles wunderbar.

- Bei AndroidSign hat er bei Auswahl von "2" und "3" gemeckert, dass er die Dateien "testsign.jar" und "testsign_apk.reg" nicht im System32-Ordner findet. Wenn er sie also da unbedingt haben will... Einfach die Dateien reinkopieren und es funktioniert.

Viele Grüße!

magnumc
 
Was genau hat es denn jetzt mit dem SDK auf sich ????
 
Hey,
Ich wollte mir ein auf den Helix_v0.5.zip basierenden Custom Rom ein eigenes Rom erstellen.
Alles klappt auch sehr gut, bisauf, wenn ich am Ende in die Konsole die "4", den Pfad eingebe, mit "yes" bestätige und ich folgende Fehlermeldung bekomme:s. Anhang.
Ich weiß nicht, was ich machen soll, ich habe schon das Signtool und das Android-SDK neuinstalliert, aber es funktioniert einfach nicht :(
Sind solche Fehlermeldungen schon öfters vorgekommen ?
MFG randor48
 

Anhänge

  • Unbenanntes Bild.png
    Unbenanntes Bild.png
    4,2 KB · Aufrufe: 2.387
Vermutlich bist du über die gleichen Probleme gestolpert, die ich oben beschrieben habe:
Die Dateien "testsign.jar" und "testsign_apk.reg" (findest du in der ZIP-Datei von AndroidSign) sollten in den Windows\System32-Ordner kopiert werden, danach in der Konsole noch einmal "2" und noch einmal "3" durchführen. Danach müsste auch die "4" funktionieren :)
 
Darf ich mal fragen, wer sonst noch alles mit diesem Turtorial gearbeitet hat. Die Anzahl der Download und die Antworten hier im Thread gegen nämlich weit auseinander :D
 
  • Danke
Reaktionen: T-Mobile.Pulse
Ich habe nach so ner Anleitung gesucht gehabt und bin bei euch fündig geworden. Ich habe mir ein paar custom roms gebaut mit dieser anleitung und hoffe nur noch bald das mit den apps besser hinzubekommen. Interessant ist das es alles auf anhieb geklappt hat und ich nicht großartig lange probieren musste. sinnig ist auch der hinweis was wichtig ist und was wech gelassen werden kann.

Danke nochmal :drool: :razz:
 
Danke für deiben Beitrag, schön das es geklappt hat. Die Idee selbst so ein How2 zu schreiben war schon älter, da ich selbst gesucht habe - erfolklos.

Wenn ich noch mal ne ordeniche Portion Zeit habe gibts ein Update jnd eine Überarbeitung der Anleitung.
 
hallo,
ich kann die .exe nicht entpacken.
Ich kriege eine Fehlermeldung, wenn ich versuche die RUU......exe zu entpacken. Woran liegt das?
Es muss ja das boot.img etc. entpackt werden. Scheitere bislang
 
Du versuchst ein komplettes Updatepaket in Form einer Exe, also einer ausführbarendatei zu entpacken, was ohne weiteres nicht möglich ist. Zwar gibt rs hierfür ein Script, jedoch habe ich das noch nicht probiert.

Daher musst du einfach ein .zip Rom nehmen, also beinahe jedes Custom Rom.
 
Moin zusammen,

Ich wollte mich auch mal daran versuchen mein eignes Rom zu erstellen.Ich finde die Anleitung sehr hilfreich und habe mir auch die SDK schon runtergeladen.
Nur bei dem "AndroidSign" Tool bekomme ich Probleme da ich nicht bei Rapidshare angemeldet bin. Wäre es möglich das einer es mir woanders zur verfügung stellt? Ich habe es leider bis jetzt noch nicht woanders gefunden nur ein Prog. mit Namen "AndroidSigner" es ist ja aber nicht das selbe.

Wäre für eure Hilfe sehr dankbar.

mfg
k.-h.

:huh:
 
Schreib mir ne PN mit deiner Mailadresse.
 
Moin,
Danke dir für deine Hilfe melde mich über PN bei dir.

Gruss k.-h.
 
Hallo Halix

Ich wollte nur nochmal nachfragen ob du mich vergessen hast.
Wäre prima wenn du mir oder natürlich auch jeder andere das Programm " androidsign" so hieß das glaube ich zukommen lassen könnte.

Mfg k.-h.
 
Auch ich habe Wochenende und muss mich mal erholen ;)
Keine Sorge hab dir gerade ne Mail geschrieben.
 

Ähnliche Themen

E
Antworten
4
Aufrufe
2.115
Kardroid
Kardroid
E
Antworten
1
Aufrufe
1.452
moidept
moidept
Kiwi++Soft
Antworten
9
Aufrufe
7.645
Jaiel
Jaiel
Zurück
Oben Unten