Hogyan készítsünk egyedi ROM-ot az Android nyílt forráskódú projektjéből

forrás más néven AOSP (Android nyílt forráskódú projekt) .



Most az AOSP-val az a helyzet, hogy a tiszta forráskód nem tartalmaz eszközspecifikus hardvertulajdonságok. A köznyelvben fogalmazva, az olyan hardverek, mint a fényképezőgép és a GPU, nem fognak 'dobozon kívül' működni, amikor az AOSP-val fejlesztenek. Valójában ezek a hardver bináris fájlok nélkül a készülék még nem is indul.

Ha egy Google márkájú telefonhoz fejlesztesz (Pixel, Nexus stb.), Megtalálhatod a hardver bináris fájljait közvetlenül a Google-tól , és ez az útmutató végigvezeti Önt azok megszerzésén és beépítésén a ROM-ba. Ha azonban márkanévvel rendelkező telefonhoz fejlesztesz ROM-ot (Sony, Samsung stb.), Akkor áldd meg a szíved, mert egy kört vársz.



Néhány a gyártóknak saját nyílt forráskódú projektjeik vannak, vagy fejlesztési eszközöket fejlesztenek ki a leendő fejlesztők számára, míg más gyártók szorosan fedezik a saját kódjaikat. Íme egy rövid lista a népszerűbb gyártók nyílt forráskódú projektjeiről:



Samsung nyílt forráskódú kiadási központ
Sony Developer World
Lenovo támogatás
Huawei Nyílt Forrás Kiadási Központ
Motorola fejlesztők



Ha ez így nincs, folytassuk azt a feltételezést, hogy ROM-ot építünk a legalapvetőbb, vaníliás Android-élmény érdekében, egy Google Pixel eszközhöz. Ezzel az ismerettel az öv alatt önállóan tud elágazni, és elkezdheti fejleszteni az adott gyártó ROM-ok testreszabott verzióit.

Az útmutató követelményei:

  • Android nyílt forráskódú projekt
  • Pixel XL telefon vagy Android emulátor Linuxhoz
  • 64 bites Linux operációs rendszer - Ubuntu vagy Linux Mint a leginkább újoncbarát diszkók, míg BBQLinux kifejezetten az Android fejlesztők szem előtt tartásával fejlesztették ki.
  • Piton
  • Nagy teljesítményű számítógép (a kód összeállítása sok memóriát és helyet foglal!)

Az építési környezet beállítása

Kezdjük azzal, hogy beállítjuk az Android emulátort a Linux gépen. Függetlenül attól, hogy rendelkezik-e Google Pixel XL eszközzel, az a legbiztonságosabb, ha új ROM-ot kipróbál egy Android emulátoron előtt villog a készülékre. Személyes kedvencem a Genymotion, így végigvezetek az adott emulátor telepítésén. Megtekintheti azonban ezt az útmutatót is A legjobb Android emulátorok ”, Mivel többségük rendelkezik Linux kompatibilitással is.

Irány a Genymotion weboldal , regisztráljon egy fiókot, ellenőrizze e-mailben, és töltse le a futtatható fájlt a Linux asztalra.



Most nyissa meg a Linux terminált, és írja be:

Chmod + x genymotion-xxxxx.bin (cserélje le xxxx-et a fájlnév verziószámával)
./genymotion-xxxxxx.bin

nyomja meg ÉS a Genymotion könyvtár létrehozásához. Írja be a terminált:

cd genymotion && ./genymotion

Most arra kéri Önt, hogy kezdje meg a telepítési folyamatot, ezért csak kattintson a Tovább gombra, amíg el nem jut a Virtuális eszközök hozzáadása ablakhoz. Válassza a „Pixel XL” lehetőséget az Eszközmodell opció alatt, majd fejezze be a telepítést. Ha akarja, kipróbálhatja a virtuális eszközt, alapvetően olyan lesz, mintha egy Pixel XL telefon lenne az asztalon.

Most állítsuk be a Python-t:

$ apt-get install python

Most be kell állítanunk a Java fejlesztőkészletet az Ön Linux gépére. Nyissa meg a Linux terminált, és írja be a következő parancsokat:

$ sudo apt-get update
$ sudo apt-get install openjdk-8-jdk

Most be kell állítania a Linux rendszert az USB-eszközökhöz való hozzáférés engedélyezéséhez. Futtassa a következő kódot a Linux terminálon:

Ez letölti a szükséges 51-android.txt fájlt, amely lehetővé teszi a fent említett USB-eszköz elérését. Nyissa meg a .txt fájlt, és módosítsa úgy, hogy tartalmazza a Linux felhasználónevét, majd helyezze a .txt fájlt a következő helyre: (mint a root felhasználó ). Most csatlakoztassa az eszközt a számítógépéhez USB-n keresztül, hogy az új szabályok automatikusan érvénybe lépjenek.

Az Android forrás letöltése

Az AOSP-t a Git üzemelteti, ezért a Repo nevű eszközt fogjuk használni a Gittel való kommunikációhoz.

Először be kell állítanunk egy / bin mappát a saját könyvtárban. Írja be a következő parancsokat a Linux terminálba:

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

Most letöltjük a Repo eszközt, ezért gépelje be a Linux terminált:

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

A Repo telepítése után most létre kell hoznunk egy üres könyvtárat a munkafájlok tárolására. Írja be ezt a Linux terminálba:

$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

Most konfiguráljuk a Git-et az Ön nevével és e-mail címével - használjon olyan Gmail-címet, amelyet rendszeresen ellenőriz , különben nem fogja tudni használni a Gerrit kódellenőrző eszközt.

$ git config –global user.name „Az Ön neve”
$ git config –global user.email
te@gmail.com

Most azt mondjuk Repónak, hogy húzza ki az AOSP legújabb mesterjegyzékét a Gitből:

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

Sikeres végrehajtása esetén üzenetet kap, hogy a Repo inicializálva lett a munkakönyvtárában. Talál egy „ .repo ” könyvtárat az ügyfélkönyvtárban. Tehát most letöltjük az Android forrásfáját:

$ repo szinkron

Az Android forrás kiépítése

Itt játszódnak le az útmutató elején említett hardver bináris fájlok. Térjünk át a AOSP illesztőprogramok oldalt, és töltse le a Pixel XL bináris fájlokat Android 7.1.0 (NDE63P) rendszerhez. Mind a szállítói képet, mind a hardverösszetevőket le szeretné tölteni. Ezek tömörített archívumként érkeznek, ezért vonja ki őket az asztalra, és futtassa az önkicsomagoló szkriptet a gyökérmappából. Válassza a bináris fájlok telepítését a korábban létrehozott WORKING_DIRECTORY gyökérkönyvtárába.

Most írja be a Linux terminálját:

$ készítsen rablót
$ source build / envsetup.sh

Most kiválasztjuk a felépítendő célt, ezért írja be:

$ lunch aosp_marlin-userdebug
$ setpaths
$ make –j4

Ott most forrásból „építettünk” egy Android ROM-ot. Tehát teszteljük az emulátorban, beírva a terminált:

$ emulátor

Játsszon hát egy kicsit az emulátorban. Mint látható, a tisztán vaníliás Android-élmény meglehetősen minimális, és ezért a gyártók az AOSP-t saját igényeikhez igazítják. Szóval te tudott villantsa fel ezt a ROM-ot, amelyet épp az Ön készülékére építettünk, ha akarja, de bármilyen fejlesztés hozzáadása nélkül a tisztán vaníliás Android-élmény valóban unalmas dolog lenne.

Tehát amit a gyártók általában tesznek az AOSP-vel, az az, hogy elágazik, hozzáadja saját, saját bináris fájljait, testreszabja az UI-t, hozzáad egy boot logót stb. .

Maradjon velünk, mivel az útmutató második része betűtípusok, témák és indító animáció hozzáadásával jár át a ROM-on!

5 perc olvasás