So erstellen Sie ein benutzerdefiniertes ROM aus einem Android-Open-Source-Projekt

Wenn Sie mit dem Rooten Ihres Android-Telefons oder dem Herunterladen von benutzerdefinierten ROMs wie dem sehr beliebten CyanogenMod oder seinem Nachfolger Lineage OS vertraut sind, haben Sie sich vielleicht gefragt: Wie bauen die Leute diese ROMs? Wie viel Arbeit steckt in der Entwicklung eines individuellen ROM?

Dieser Leitfaden wird Sie durch die Grundlagen der Entwicklung Ihres eigenen benutzerdefinierten Android-ROMs führen. Es sollte darauf hingewiesen werden, dass dies ein gewaltiges Unterfangen ist - wenn Sie keine Erfahrung mit dem Codieren oder Herumalbern in Linux-Terminals haben, sollten Sie sich etwas Wissen aneignen, bevor Sie in dieses tiefe Ende eintauchen. Aber wenn Sie zumindest eine Grundidee dieser Dinge haben, werde ich versuchen, die Dinge so einfach wie möglich zu erklären, damit Sie folgen können.

Im Grunde laden wir den rohen Android-Quellcode (AOSP) herunter und modifizieren ihn nach unseren Wünschen. Da für verschiedene Geräte so viele Quellen zur Auswahl stehen, verweist dieses Handbuch einfach auf die Hauptquelle, die als AOSP (Android Open Source Project) bekannt ist .

Die Sache an der AOSP ist, dass der reine Quellcode keine gerätespezifischen Hardwareeigenschaften enthält. Laut Laien funktioniert Hardware wie Kamera und GPU bei der Entwicklung mit dem AOSP nicht ohne weiteres. In der Tat wird Ihr Gerät nicht einmal ohne diese Hardwarebinärdateien gestartet.

Wenn Sie für ein Smartphone der Marke Google (Pixel, Nexus usw.) entwickeln, können Sie die Hardwarebinärdateien direkt von Google finden. In diesem Leitfaden erfahren Sie, wie Sie sie in Ihrem ROM erwerben und erstellen. Wenn Sie jedoch ein ROM für ein Markentelefon (Sony, Samsung, usw.) entwickeln, dann segnen Sie Ihr Herz, denn Sie sind auf einer Fahrt.

Einige Hersteller haben ihre eigenen Open-Source-Projekte oder Release-Entwicklungstools für zukünftige Entwickler, während andere Hersteller ihre proprietären Codes fest im Griff haben. Hier ist eine kurze Liste von Open-Source-Projekten von den bekannteren Herstellern:

Samsung Open Source Release Center
Sony Entwicklerwelt
Lenovo Unterstützung
Huawei Open Source Release Center
Motorola Entwickler

Wir wollen damit fortfahren, dass wir ein ROM für die einfachste Android-Erfahrung für ein Google Pixel-Gerät erstellen. Mit diesem Wissen werden Sie in der Lage sein, sich selbständig zu entwickeln und mit der Entwicklung kundenspezifischer Versionen bestimmter Hersteller-ROMs zu beginnen.

Anforderungen für diesen Leitfaden:

  • Android-Open-Source-Projekt
  • Pixel XL-Telefon oder ein Android-Emulator für Linux
  • 64-Bit-Linux-Betriebssystem - Ubuntu oder Linux Mint sind die meisten Newbie-freundlichen Distributionen, während BBQLinux speziell für Android-Entwickler entwickelt wurde.
  • Python
  • Ein bulliger Computer (Kompilierungscode benötigt viel Speicherplatz und Speicherplatz!)

Einrichten Ihrer Build-Umgebung

Beginnen wir damit, den Android-Emulator auf Ihrem Linux-Computer einzurichten. Unabhängig davon, ob Sie ein Google Pixel XL-Gerät besitzen oder nicht, ist es immer am sichersten, Ihr neues ROM auf einem Android-Emulator auszuprobieren, bevor Sie es auf Ihrem Gerät aufzeichnen. Mein persönlicher Favorit ist Genymotion, also werde ich Sie durch die Installation dieses speziellen Emulators führen. Sie können jedoch auch diesen Leitfaden für die besten Android-Emulatoren für Windows im Jahr 2017 lesen, da die meisten von ihnen auch Linux-kompatibel sind.

Gehen Sie zur Genymotion-Website, registrieren Sie ein Konto, verifizieren Sie es per E-Mail und laden Sie die ausführbare Datei auf Ihren Linux-Desktop herunter.

Öffnen Sie nun ein Linux-Terminal und geben Sie Folgendes ein:

Chmod + x genymotion-xxxxx.bin (ersetze xxxx mit der Versionsnummer im Dateinamen)
./genymotion-xxxxxx.bin

Drücken Sie Y, um das Genymotion-Verzeichnis zu erstellen. Gib jetzt das Terminal ein:

cd genymotion && ./genymotion

Jetzt werden Sie aufgefordert, mit der Installation zu beginnen. Klicken Sie einfach auf Weiter, bis Sie zum Fenster Virtuelle Geräte hinzufügen gelangen. Wählen Sie Pixel XL unter der Option Gerätemodell aus, und schließen Sie die Installation ab. Sie können das virtuelle Gerät testen, wenn Sie möchten, es wird im Grunde sein wie ein Pixel XL-Telefon auf Ihrem Desktop.

PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klicken

Lassen Sie uns nun Python einrichten:

$ apt-get install python

Jetzt müssen wir das Java Development Kit auf Ihrem Linux-Rechner einrichten. Öffnen Sie das Linux-Terminal und geben Sie die folgenden Befehle ein:

$ sudo apt-get Aktualisierung
$ sudo apt-get installieren openjdk-8-jdk

Jetzt müssen Sie das Linux-System konfigurieren, um den Zugriff auf USB-Geräte zu ermöglichen. Führen Sie den folgenden Code im Linux-Terminal aus:

Dadurch wird die erforderliche Datei 51-android.txt heruntergeladen, die den oben genannten Zugriff auf das USB-Gerät ermöglicht. Öffnen Sie die TXT-Datei, und ändern Sie sie, sodass sie Ihren Linux-Benutzernamen enthält, und platzieren Sie dann die TXT-Datei an folgendem Speicherort: (als root-Benutzer ). Schließen Sie jetzt Ihr Gerät über USB an Ihren Computer an, damit die neuen Regeln automatisch wirksam werden.

Herunterladen der Android-Quelle

Die AOSP wird auf Git gehostet, daher werden wir ein Tool namens Repo verwenden, um mit Git zu kommunizieren.

Zuerst müssen wir einen Ordner / bin in Ihrem Home-Verzeichnis einrichten. Geben Sie die folgenden Befehle in das Linux-Terminal ein:

$ mkdir ~ / bin
$ PATH = ~ / bin: $ PATH

Jetzt laden wir das Repo-Tool herunter und geben es in das Linux-Terminal ein:

$ curl https://storage.googleapis.com/git-repo-downloads/repo> ~ / bin / repo
$ chmod a + x ~ / bin / repo

Nach der Installation von Repo müssen Sie jetzt ein leeres Verzeichnis für Ihre Arbeitsdateien erstellen. Also tippe das in das Linux-Terminal:

$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

Jetzt konfigurieren wir Git mit Ihrem Namen und Ihrer E-Mail-Adresse - verwenden Sie eine Gmail-Adresse, die Sie regelmäßig überprüfen, sonst können Sie das Gerrit Code-Review-Tool nicht verwenden.

$ git config -global user.name Ihr Name
$ git config -global user.email [email protected]

Jetzt werden wir Repo anweisen, das letzte Hauptmanifest von AOSP von Git zu ziehen:

$ repo init -u https://android.googlesource.com/platform/manifest

Wenn dies erfolgreich durchgeführt wurde, erhalten Sie eine Nachricht, dass Repo in Ihrem Arbeitsverzeichnis initialisiert wurde. Sie finden auch ein Repo- Verzeichnis im Client-Verzeichnis. Jetzt werden wir den Android Source Tree herunterladen mit:

$ Reposynchronisation

Erstellen der Android-Quelle

Hier kommen die am Anfang dieses Handbuchs erwähnten Hardwarebinärdateien ins Spiel. Gehen wir zur AOSP-Treiberseite und laden Sie die Pixel XL-Binärdateien für Android 7.1.0 (NDE63P) herunter. Sie möchten sowohl das Hersteller-Image als auch die Hardwarekomponenten herunterladen. Diese kommen als komprimierte Archive, also entpacken Sie sie auf Ihren Desktop und führen Sie das selbstextrahierende Skript aus dem Stammordner aus. Wählen Sie, um die Binärdateien im Stammverzeichnis von WORKING_DIRECTORY zu installieren, das zuvor erstellt wurde.

Gib jetzt in dein Linux-Terminal ein:

$ machen Clobber
$ source build / envsetup.sh

Jetzt wählen wir das zu erstellende Ziel. Geben Sie ein:

$ Mittagessen aosp_marlin-userdebug
$ Setpfade
$ make -j4

Dort haben wir jetzt ein Android-ROM aus der Quelle erstellt. Also testen wir es im Emulator, indem wir in das Terminal tippen:

$ Emulator

Also spiel ein bisschen im Emulator herum. Wie Sie sehen können, ist eine reine Android-Erfahrung nur minimal, und deshalb passen Hersteller die AOSP an ihre Bedürfnisse an. So könnten Sie dieses ROM, das wir gerade erstellt haben, auf Ihrem Gerät flashen, wenn Sie das wollten, aber ohne zusätzliche Verbesserungen wäre eine Android-Erfahrung mit einer reinen Vanille-Funktion eine sehr langweilige Sache.

Also, was Hersteller typischerweise mit dem AOSP tun werden, ist es Gabel, fügen Sie ihre eigenen proprietären Binärdateien, anpassen die Benutzeroberfläche, fügen Sie ein Boot-Logo, etc. Hersteller im Grunde nur über die Lager Android ROM, und so wird auch das nächste Ziel sein .

Bleiben Sie dran, denn im zweiten Teil dieses Handbuchs werden Ihrem ROM Schriften, Themen und eine Boot-Animation hinzugefügt!

PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klicken

Facebook Twitter Google Plus Pinterest