Luo oma mukautettu Android-versiosi alusta alkaen

  • Sinun on määritettävä Linux-kehitysympäristö, asennettava työkalut ja ladattava Android-lähdekoodi repositoriosta.
  • Mukauttaminen edellyttää omien blobien käyttöä ja kohdelaitteen asianmukaista määrittämistä ennen rakentamista.
  • Prosessi sisältää sertifiointitestauksen ja edistyneitä mukautusvaihtoehtoja järjestelmän räätälöimiseksi tarpeisiisi.

Kuinka saada mukautettu Android-versio

Androidin mukautetun version luominen tyhjästä saattaa tuntua valtavalta haasteelta, joka on vain kokeneiden kehittäjien ulottuvilla. Todellisuudessa kuka tahansa innokas käyttäjä voi kuitenkin oikealla ohjauksella ja pienellä kärsivällisyydellä saavuttaa tämän teknologisen saavutuksen ja varustaa laitteensa tarpeisiinsa räätälöidyllä käyttöjärjestelmällä.

Viemme sinut yksityiskohtaiselle ja luonnolliselle kierrokselle askel askeleelta ja ilman liiallista teknistä ammattikieltä, tietokoneesi valmistelusta ja lähdekoodin lataamisesta oman Android-versiosi kääntämiseen, asentamiseen ja lopulta mukauttamiseen. Kaikki mitä sinun tarvitsee tietää, hakukoneiden parhaiden tietojen inspiroimana ja laajentamana, löydät täältä, selkeästi selitettynä ja henkilökohtaisella otteella, jota arvostetaan niin paljon, kun syvennymme Android-kehityksen maailmaan.

Miksi luoda mukautettu Android-versio?

Oman Android-ROM-levyn kokoamisen motiivit voivat olla hyvin vaihtelevia.: päivitysten lakkauttamisesta puhelimen käyttöiän pidentämiseen aina yksinkertaiseen kokeilemisen iloon ja uusien asioiden oppimiseen käytetyimmän mobiilikäyttöjärjestelmän sisäisestä toiminnasta. Lisäksi, muokata Androidia Sen avulla voit hallita järjestelmän kaikkia osa-alueita käyttöliittymästä tiettyihin laitteisto-ominaisuuksiin ja poistaa sovelluksia tai palveluita, joita et tarvitse.

Kuinka käyttää reaaliaikaisia ​​tekstityksiä Androidissa
Aiheeseen liittyvä artikkeli:
Täydellinen opas reaaliaikaisten äänitekstitysten käyttöönottoon ja mukauttamiseen Androidilla

Mitä tarvitset ennen mukautetun Android-version luomista?

  • Tietokone, jossa on 64-bittinen Linux (Ubuntua tai Debiania suositellaan yhteensopivuusongelmien välttämiseksi).
  • Vähintään 16 Gt RAM-muistia (välttämätöntä, jos et halua käyttää loputtomiin kääntämiseen).
  • Vähintään 100 Gt vapaata kiintolevytilaa (Android-lähdekoodi on todella raskasta ja tarvitset jonkin verran pelivaraa kääntämiseen.)
  • Java-kehityspaketti (JDK) käännettävän Android-version erityisversiossa. Esimerkiksi Android 8.0 vaatii tietyn Java-version.
  • Olennaiset työkalut, kuten Git, ccache ja Python.
  • Android SDK ja alustatyökalut, kuten ADB (Android Debug Bridge).

Joten sinun on valmisteltava ympäristösi hyvin ennen kuin hyppäät prosessiin. Älä huoli: useimmat näistä vaatimuksista asennetaan vain muutamalla komennolla, ja monet opetusohjelmat, mukaan lukien tämä opas, opastavat sinut niiden läpi askel askeleelta.

Näin saat mukautetun version Androidista

Kehitysympäristön valmistelu mukautetun Android-version luomiseksi

Ensimmäinen vakava askel on saada tietokoneesi taistelukuntoon.. Asenna Ubuntu (tai suosikki Debian-pohjainen jakelusi), päivitä se ja varmista, että peruspaketit ovat ajan tasalla.Tässä on luettelo tärkeimmistä komennoista, joita voit suorittaa terminaalissa:

  • sudo apt päivitys && sudo apt päivitys
  • sudo apt install git-core gnupg flex bison build-essential zip curl zlib1g-dev
  • sudo apt install gcc-multilib g++-multilib libc6-dev-i386
  • sudo apt install openjdk-8-jdk python3 git ccache
  • sudo apt install libncurses5 libncurses5-dev libssl-dev libxml2-utils xsltproc unzip fontconfig

Muista mukauttaa Java-versio käännettävän Android-version mukaan.Kaikki Android-laitteet eivät käytä samaa JDK-versiota, joten tutustu viralliseen AOSP:n (Android Open Source Project) dokumentaatioon, jos sinulla on kysyttävää.

Lataa Android-lähdekoodi: mistä ja miten se tehdään

Androidin lähdekoodi on melkoisen suuri, eikä sen lataaminen ole yhtä helppoa kuin yksinkertaisen git-kloonin lataaminen.Käytetään erityistä työkalua: repo, jonka Google on suunnitellut useiden aliprojektien sisältävien suurten tietovarastojen hallintaan.

Ensinnäkin, asenna repo:

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

Seuraavaksi luo lähdekoodillesi kansio ja mene sinne:

  • mkdir ~/android-source && cd ~/android-source

Alusta sitten repositorio haluamallasi haaralla (esimerkiksi Android-versiolle 13):

  • repo init -u https://android.googlesource.com/platform/manifest -b android-13.0.0_r1
  • repo synkronointi

Synkronointiprosessi voi kestää tunteja, yhteydestäsi riippuen. Jos prosessi epäonnistuu, toista repo synkronointi kunnes se on valmis oikein. Ole aina kärsivällinen; on täysin normaalia, että se kestää jonkin aikaa!

Mikä on AOSP ja miksi se on tärkeä oman ROM-levyn luomisessa?

AOSP (Android Open Source Project) on Androidin ydin, valmistajat ja kehittäjät työskentelevät sen pohjalta. Mukautetun ROM-levyn kääntäminen tarkoittaa tämän koodin ottamista, sen mukauttamista laitteeseesi ja ominaisuuksien lisäämistä (tai poistamista) haluamallasi tavalla. Et voi käyttää Googlen omia palveluita, ellet flashaa niitä erikseen, mutta se antaa sinulle täyden hallinnan järjestelmään.

Rakennusympäristön määrittäminen

Keskeinen skripti tässä on envsetup.sh. Tämä skripti määrittää kaikki kääntämiseen tarvittavat muuttujat.. Suorita lähdekoodin juurihakemistosta terminaalissa:

  • lähde build/envsetup.sh

Tämä vaihe on välttämätön ja Tämä tulisi tehdä joka kerta, kun avaat uuden terminaalin työskennelläksesi koodin kanssa.Jos unohdat tämän, kohtaat virheitä, joita voi olla vaikea diagnosoida.

Kohdelaitteen valinta: kaikki puhelimet eivät ole samanlaisia!

Seuraava vaihe on valita laite, jolle käännät.Tämä tehdään komennolla lounas, joka määrittää tuotteen, variantin ja koontikokoonpanon. Esimerkiksi emulaattorille, jonka arkkitehtuuri on x86_64:

  • lounas aosp_x86_64-eng

Jos rakennat oikeaa laitetta varten, sinun on valittava tarkka tuotteen nimi. Monet valmistajat käyttävät sisäisiä nimiä (esim. 'evert' Moto G6 Plussapuhelimelle). Listauksia löytyy kehittäjäsivuilta ja tietyiltä foorumeilta.

Käännösvarianttien ymmärtäminen: user, userdebug ja eng

  • lähettämäLoppukäyttäjäkeskeinen koontiversio, ei pääkäyttäjän oikeuksia tai kehitystyökaluja.
  • userdebugKehittäjille suunniteltu, sisältää virheenkorjaustyökaluja, mutta on lähes identtinen käyttöliittymän kanssa.
  • engsisäisille kehittäjille, vähemmän optimoitu, mutta kääntyy nopeammin ja sisältää edistyneitä asetuksia.

Niille, jotka ovat aloittamassa, userdebug on joustavin ja kätevin vaihtoehtoMahdollistaa pääsyn pääkonsoliin ja virheenkorjaustyökaluihin, mikä helpottaa testausta ja virheenkorjausta huomattavasti.

Omien blobien asentaminen: Mitä ne ovat ja miksi tarvitsen niitä?

Android-laitteet tarvitsevat usein toimiakseen oikein toimintojen, kuten kameran, Wi-Fin tai äänen, osalta omaa tiedostoa (blob-tiedostoja). Tämä johtuu siitä, että monet valmistajat eivät julkaise näiden komponenttien lähdekoodia. Ilman näitä blob-tiedostoja ROM-muistisi toimii, mutta ilman pääsyä tiettyihin laitteiston osiin.

Yleensä nämä blobit puretaan virallisesta ROM-muistista. Monille laitteille on olemassa projekteja, kuten TheMuppets (GitHubissa), joista voit ladata ne malliisi. Esimerkiksi Motorola Moto G6 Plus -laitteelle:

  • git-klooni https://github.com/TheMuppets/proprietary_vendor_motorola_evert vendor/motorola/evert

Näiden tiedostojen on oltava oikeassa polussa AOSP-rakenteessa, jotta ne voidaan havaita käännöksen aikana.

Laitteen ympäristön alustaminen

Kun blobit ovat paikoillaan, on aika määrittää mobiililaitteelle sopiva rakennusympäristö.Jos laitteesi nimi on 'evert', esimerkiksi:

  • lähde build/envsetup.sh
  • lounas lineage_evert-userdebug

Tämä lataa kaikki tarvittavat määritykset varmistaen, että koontikomentosarjat löytävät sekä yleisen Android-lähdekoodin että laitteellesi ominaiset tiedostot.

Kuinka optimoida käännösaikaa?

Androidin kääntäminen voi olla hidasta, varsinkin ensimmäisellä kerralla.Optimoimiseksi on suositeltavaa käyttää ccache, työkalu, joka tallentaa käännöstiedostojen välivaiheita, jotta sinun ei tarvitse kääntää kaikkea uudelleen joka kerta.

Kuinka aktivoida flash-ilmoitukset Android 14:ssä?
Aiheeseen liittyvä artikkeli:
Edistynyt opas flash-ilmoitusten käyttöönottoon ja mukauttamiseen Androidilla
  • vienti USE_CCACHE=1
  • ccache -M 100g

Tämä varaa 100 Gt koontivälimuistille, mikä voi merkittävästi nopeuttaa järjestelmän uudelleenrakennusta, kun teet vain pieniä muutoksia.

Kokoonnutaan! Totuuden hetki

Odotetuin vaihe on tässä: oman Android-ROM-levyn kokoaminen.Avaa lähdekoodin juuressa oleva terminaali ja suorita:

  • make -j$(nproc) otapaketti

Prosessi voi kestää useita tunteja prosessorin tehosta ja käytettävissä olevan RAM-muistin määrästä riippuen.Älä vaivu epätoivoon! On normaalia, että tuuletin savuaa ja tietokone näyttää toimivan 100 % teholla pitkään. Lopulta se luo .zip-tiedoston, jossa on ROM-tiedosto valmiina asennettavaksi palautusohjelman (TWRP tai vastaava) kautta.

Lopputulos on kansiossa ulos/kohde/tuote/ /

Valinnaiset työkalut, jotka voivat helpottaa elämääsi: ScriBt ja yritys

Niille, jotka haluavat säästää aikaa ja välttää aloittelijoiden virheitä, on olemassa apuohjelmia, kuten ScriBt, jotka automatisoivat kaiken arkiston synkronoinnista blob-objektien latauksiin ja riippuvuuksien asennukseen. Nämä työkalut voivat yksinkertaistaa elämääsi huomattavasti ja ovat ihanteellisia niille, jotka kääntävät usein tai hallitsevat useita laitteita.

On kuitenkin aina suositeltavaa ymmärtää manuaalinen prosessi ennen kuin sokeasti luottaa automatisoituihin skripteihin., koska tällä tavoin opit ratkaisemaan ongelmia ja ymmärtämään, mitä kussakin vaiheessa tapahtuu.

Entä jos haluan mennä pidemmälle? Kääntäminen tietylle laitteistolle ja säiereitittimille

Android-ekosysteemi ei rajoitu pelkästään matkapuhelimiin. Voit myös kääntää Androidin erityislaitteille, kuten reitittimille, joissa on Thread-tuki.Nämä laitteet vaativat mukautetun HAL-kirjaston määrittämisen, Thread-verkkopiirin lähdekoodin mukauttamisen ja testaamisen emulaattoreilla, kuten Cuttlefish, käyttäen työkaluja, kuten ot-cli-ftd y ot-ctl.

Tämä prosessi on edistyneempi ja tyypillisesti siihen liittyy muutoksia XML-tiedostoihin, käynnistysskripteihin ja käyttöoikeuksiin sekä radiokohtaisten APEX-moduulien kääntämistä. Se vaatii kokemusta, mutta on täysin mahdollista noudattamalla virallista dokumentaatiota.

Mukautetun ROM-levysi testaus ja sertifiointi

Kun kokoelma on valmis, on testauksen aika.Mukautetun järjestelmäsi vakauden ja sujuvan toiminnan varmistamiseksi on olemassa joukko vakiotyökaluja:

  • VTS (toimittajan testiohjelmisto): Varmistaa HAL-yhteensopivuuden ja toiminnan.
  • CTS (Compatibility Test Suite)Varmistaa, että API:t toimivat Android-standardien mukaisesti.
  • IntegraatiotestausHe arvioivat järjestelmää kokonaisuutena varmistaen, että eri osat eivät aiheuta ristiriitoja.

Lisäksi voit käyttää sovelluksia, kuten SäikeenVerkkoDemoApp visuaalista testausta varten, jos olet rakentanut järjestelmiä reitittimille tai IoT-laitteille.

Mukauttaminen: Perusrakenteiden tuolla puolen

Rakentaminen on vasta ensimmäinen askel; mukautetun Android-version luominen tekee kaiken eron.Voit muuttaa käyttöliittymää, poistaa tarpeettomia sovelluksia tai lisätä tiettyjä modeja. Jos sinulla on ohjelmointitietoa, voit muokata koodia suoraan tai lisätä omia sovelluksiasi perusjärjestelmään.

Monet käyttäjät valitsevat forkkaamaan suosittuja projekteja, kuten LineageOS:n, koska niillä on valtava yhteisö ja monia lisätyökaluja mukauttamista varten. Pyörää ei tarvitse keksiä uudelleen: hyödynnä yhteisön lahjoituksia aina kun voit..

Lisävinkkejä aloitteleville kehittäjille

Jos motivaatiosi on aloittaa ammattimaisesti Androidin kehitysKäännösten hallitseminen ja mukautetun Android-version luominen on erittäin arvostettu taito. Suosittelemme:

  • Lataa kehitystyösi ja muokkaustesi alustoille, kuten GitHub, saadaksesi näkyvyyttä ja parhaita käytäntöjä.
  • Kouluttaudu sisään Kotlin ja Android Studio: virallinen kieli ja ympäristö sovellusten luomiseen ja Android-järjestelmän muokkaamiseen.
  • Kokeile yksinkertaisia ​​sovelluksia ennen kuin hyppäät muokkaamaan täysiä ROM-levyjä.
  • Ole kärsivällinen: Kääntämisen ja mukauttamisen oppiminen avaa sinulle monia ovia, mutta se vie aikaa!

Usein kysyttyjä kysymyksiä ja yleisiä ongelmia

  • Mitä teen, jos koonti epäonnistuu tuntemattoman virheen vuoksi? Käy kaikki vaiheet läpi, tarkista, onko sinulla riittävästi tilaa ja muistia, ja tarkastele yksityiskohtaisia ​​järjestelmälokeja.
  • Voinko palata takaisin, jos tiilen puhelimeni? Kyllä, useimmissa tapauksissa mukautetulla palautuksella voit asentaa alkuperäisen ROMin uudelleen.
  • Onko mahdollista sisällyttää Googlen palveluita? Niitä ei oletusarvoisesti sisällytetä AOSP:hen. Ne voidaan flashata myöhemmin (Google Apps tai "GApps"), mutta joillakin laitteilla kaikki ei välttämättä toimi täydellisesti.
  • Parannanko yksityisyyttä poistamalla suojattuja komponentteja? Kyllä, vaikka menetätkin joitakin toimintoja, jotka ovat riippuvaisia ​​Googlen palveluista tai valmistajista.
  • Toimiiko build-versio millä tahansa laitteella? Ei. Sinun on varmistettava, että mallillesi on olemassa tuki (laitepuu, blobit, ydin ja muut tiedostot).

Mukautetun Android-ROM-levyn luominen on mullistava ja epäilemättä jännittävä seikkailu. Ympäristön valmistelusta koodin lataamiseen ja synkronointiin sekä kunkin laitteen yksilölliseen kokoonpanoon ja pitkään kääntämiseen, prosessi on vaativa mutta myös erittäin palkitseva. Se antaa sinulle myös mahdollisuuden vapauttaa puhelimesi tai laitteesi täyden potentiaalin ja räätälöidä sen omiin tarpeisiisi kuin hansikas.

Lukitusnäyttö Androidissa
Aiheeseen liittyvä artikkeli:
Perimmäinen opas Android-lukitusnäytön mukauttamiseen: taustakuvat, widgetit, suojaus ja temput

Työkalujen, kuten ccachen, ScriBtin ja yhteisön tuen, avulla sekä pienellä sinnikkyydellä ja jatkuvalla oppimisella kuka tahansa harrastaja voi saavuttaa uskomattomia tuloksia ja viedä Android-kokemuksensa seuraavalle tasolle. Jaa tämä opas ja auta muita käyttäjiä oppimaan, miten luoda mukautettu Android-versio..


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.