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

ha ismeri az Android telefon gyökerezését vagy az egyedi ROM – ok letöltését, például a rendkívül népszerű CyanogenMod vagy annak utódja, a Lineage OS-t, akkor kíváncsi lehet-hogyan építik az emberek ezeket a ROM-okat? Mennyi munka pontosan megy a fejlődő testreszabott ROM?

ez az útmutató végigvezeti Önt az alapokat a fejlődő saját egyéni Android ROM. Meg kell jegyezni, hogy ez egy hatalmas vállalkozás – ha nulla tapasztalata van a Linux terminálok kódolásában vagy bolondozásában, akkor érdemes némi tudást szereznie az öv alatt, mielőtt belemerülne ebbe a mélybe. De ha van legalább egy alapötlete ezekről a dolgokról, megpróbálom a lehető legegyszerűbben elmagyarázni a dolgokat, hogy követni tudja.

alapvetően a nyers Android forráskódot (AOSP) töltjük le, és tetszés szerint módosítjuk. Mivel olyan sok forrás közül lehet választani a különböző eszközökhöz, ez az útmutató egyszerűen az AOSP (Android Open Source Project) néven ismert fő forrásra hivatkozik.

az AOSP-vel kapcsolatban az a helyzet, hogy a tiszta forráskód nem tartalmaz eszközspecifikus hardver tulajdonságokat. Laikus szempontból az olyan hardverek, mint a fényképezőgép vagy a GPU, nem működnek “a dobozból”, amikor az AOSP-vel fejlesztenek. Valójában a készülék nem is indul el ezen hardveres bináris fájlok nélkül.

ha Google márkájú telefonra (Pixel, Nexus, stb.) fejleszt, a hardveres bináris fájlokat közvetlenül a Google-tól találja meg, és ez az útmutató végigvezeti Önt a ROM-ba történő beszerzésén és felépítésén. Azonban, ha a fejlődő ROM egy márkás telefon (Sony, Samsung, stb) … Nos, áldja meg a szívét, mert te egy kört.

egyes gyártók saját nyílt forráskódú projektekkel vagy fejlesztőeszközökkel rendelkeznek a leendő fejlesztők számára, míg más gyártók szorosan fedik le saját kódjaikat. Itt egy rövid lista a nyílt forráskódú projektek a népszerűbb gyártók:

Samsung Open Source Release Center
Sony Developer World
Lenovo Support
Huawei Open Source Release Center
Motorola Developers

azzal, hogy az útból, folytassuk a feltételezés építünk egy ROM a legalapvetőbb, vanília Android tapasztalat, a Google Pixel eszköz. Ezzel a tudással az öv alatt képes lesz önállóan elágazni, és megkezdheti az adott gyártó ROM-jainak testreszabott verzióinak fejlesztését.

az útmutató követelményei:

  • Android nyílt forráskódú projekt
  • Pixel XL telefon vagy Android emulátor Linux számára
  • 64 bites Linux operációs rendszer-az Ubuntu vagy a Linux Mint a leginkább kezdőbarát disztrók, míg a BBQLinux – ot kifejezetten az Android Fejlesztők szem előtt tartásával fejlesztették ki.
  • Python
  • egy nagydarab számítógép (a kód összeállítása sok memóriát és helyet igényel!)

a Build Környezet beállítása

kezdjük az Android emulátor beállításával a Linux gépen. Függetlenül attól, hogy van-e Google Pixel XL készüléke, mindig a legbiztonságosabb kipróbálni az új ROM-ot egy Android emulátoron, mielőtt villogna a készülékére. Személyes kedvencem a Genymotion, ezért végigvezetem az adott emulátor telepítésén. Megnézheti azonban ezt az útmutatót is “legjobb Android emulátorok”, mivel többségük Linux kompatibilitással is rendelkezik.

látogasson el a Genymotion weboldalára, regisztráljon egy fiókot, ellenőrizze e-mailben, és töltse le a futtatható fájlt a Linux asztalára.

most nyisson meg egy Linux terminált, és írja be:

Chmod +x genymotion-xxxxx.bin (cserélje xxxx a verziószámot a fájlnévben)
./ genymotion-xxxxxx.bin

nyomja meg az Y gombot a Genymotion könyvtár létrehozásához. Most írja be a terminált:

cd genymotion &&./ genymotion

most meg fogja kérni, hogy kezdje meg a telepítési folyamatot, ezért csak kattintson tovább, amíg el nem éri a virtuális eszközök hozzáadása ablakot. Válassza a” Pixel XL ” lehetőséget az eszközmodell opció alatt, majd fejezze be a telepítést. Kipróbálhatja a virtuális eszközt, ha akarja, alapvetően olyan lesz, mintha egy Pixel XL telefon lenne az asztalon.

állítsuk be most a Pythont:

$ apt-get install python

most be kell állítanunk a Java Fejlesztőkészletet a Linux gépen. 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, hogy engedélyezze az USB eszköz elérését. Futtassa a következő kódot a Linux terminálon:

Ez letölti a szükséges 51-Androidot.txt fájl, amely lehetővé teszi a fent említett USB-eszköz elérését. Nyissa ki a .txt fájlt, és módosítsa úgy, hogy tartalmazza a Linux felhasználónevét, majd helyezze el a .txt fájl a következő helyen: (root felhasználóként). Most csatlakoztassa a készüléket a számítógéphez USB-n keresztül, hogy az új szabályok automatikusan hatályba lépjenek.

az Android forrás letöltése

az AOSP a Git-en található, ezért a Repo nevű eszközt fogjuk használni a Git-vel való kommunikációhoz.

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

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

most letöltjük a Repo eszközt, így írja be a Linux terminálba:

$ 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ához. Tehát í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 Gmail-címet, amelyet rendszeresen ellenőriz, különben nem fogja tudni használni A Gerrit kód-felülvizsgálati eszközt.

$ Git config –globális felhasználó.név “az Ön neve”
$ git config-globális felhasználó.e-mail [email protected]

most megmondjuk a Repo-nak, hogy húzza ki az AOSP legújabb fő manifesztjét a Git-ből:

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

ha sikeresen végzett, akkor üzenetet kap, hogy a Repo inicializálva van a munkakönyvtárban. Azt is megtalálja a”.repo ” könyvtár az ügyfélkönyvtárban. Tehát most letöltjük az Android forrásfát a következővel:

$ repo sync

az Android forrás felépítése

itt jönnek létre az útmutató elején említett hardveres bináris fájlok. Menjünk át az AOSP illesztőprogramok oldalára, és töltsük le a Pixel XL bináris fájlokat az Android 7.1.0 (NDE63P) verzióhoz. Le szeretné tölteni mind a szállító képét, mind a hardverösszetevőket. Ezek tömörített archívumokként érkeznek, ezért bontsa ki őket az asztalra, és futtassa az önkicsomagoló szkriptet a gyökérmappából. Válassza ki, hogy telepítse a bináris fájlokat a korábban létrehozott WORKING_DIRECTORY gyökerébe.

most írja be a Linux terminál:

$ make clobber
$ forrás build/envsetup.sh

most majd válassza ki a cél építeni, így írja:

$ lunch aosp_marlin-userdebug
$ setpaths
$ make –j4

ott most már “épített” egy Android ROM forrásból. Tehát teszteljük az emulátorban, beírva a terminálba:

$ emulator

tehát játsszon egy kicsit az emulátorban. Mint láthatja, a tisztán vanília Android-élmény meglehetősen minimális, ezért a gyártók az AOSP-t az igényeikhez szabják. Tehát villoghat ez a ROM, amelyet csak a 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ília Android-élmény valóban nagyon unalmas dolog lenne.

tehát amit a gyártók általában az AOSP-vel csinálnak, az az, hogy villát adnak hozzá, hozzáadják saját saját bináris fájljaikat, testreszabják a felhasználói felületet, hozzáadnak egy indító logót stb. A gyártó alapvetően csak az Android ROM-ot festi át, így ez lesz a következő célod is.

maradjon velünk, mivel az útmutató második része betűtípusokat, témákat és boot animációt ad hozzá a ROM-hoz!

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.