Vairākkārtēja sāknēšana ir sarežģīts temats, un, lai to iespējotu, bieži ir nepieciešami kodola ielāpi vai atkopšana. EFIDroid ir rīks, kas to novērš.
Divkāršā sāknēšana un vairāku ROM ieviešana ir bijis liels izaicinājums Android izstrādātājiem diezgan ilgu laiku. Iepriekšējiem risinājumiem parasti bija nepieciešami būtiski risinājumi ierīcei specifiska izstrāde un turpmāks atbalsts no ROM izstrādātājiem. Pat tad tie bieži ir sarežģītāki, nekā tie ir vērti vidusmēra ROM lietotājam. EFIDroid cenšas to visu labot.
Agrāk pazīstams kā GRUB4Android, EFIDroid izveidoja XDA atzītais izstrādātājs un līdzstrādnieks. m11kkaa kā līdzekli, kas efektīvi ļauj gandrīz jebkuram ROM jābūt vairākkārtējam sāknēšanai bez pārveidošanas vēlamo ROM vai pašreizējo atkopšanu. Tas nozīmē, ka nav kodola ielāpu, nē kexec, nav ROM nesaderības problēmu un ROM lietotājiem vai izstrādātājiem nav galvassāpes.
Kas ir EFIDroid?
EFIDroid ir a otrās pakāpes sāknēšanas programma izstrādāts, lai ierīces sākotnējais sāknēšanas ielādes kods varētu apstrādāt pašu aparatūras interfeisu, tādējādi vienkāršojot darbu, kas jāveic, lai portētu šo lietojumprogrammu uz dažādām ierīcēm. Tas ir balstīts uz Intel
EDK II projekts, kuram ir labi izveidota kodu bāze un kas nodrošina ievērojamu paplašināšanu. Šajā implementācijā tiek izmantots Qualcomm atvērtā koda sāknēšanas ielādētājs, Mazais kodols (LK), un kā tāds atbalsts ir pašlaik tikai Snapdragon ierīcēm.Instalēšana ir tikpat vienkārša kā lejupielāde EFIDroidManager lietojumprogramma no Google Play veikala ierīcē ar saknes sistēmu, ja jūsu ierīce ir apvienota ar projekta atbalstu github repozitorijs. Ja jūsu ierīce tiek atbalstīta, lietojumprogramma lejupielādēs attiecīgo kodu un ļaus jums instalēt, atinstalēt, pārinstalēt un labot EFIDroid, kā arī ļauj pārvaldīt savus ROM, izmantojot vairāku sāknēšanu konfigurācija. Kad EFIDroid ir instalēts, ROM var instalēt jūsu izvēlētajā vietā (parasti kaut kur, piemēram, /data/media/0/multiboot/NAME).
Pašlaik tiek atbalstītas tikai dažas ierīces, tostarp Moto E (Condor), Moto G 4G (Peregrine), Nokia X2, OnePlus One, Vega Iron 2 un Fairphone 2. Tomēr m11kkaa ir meklē izstrādātājus, kas palīdzētu pārnēsāt EFIDroid uz citām ierīcēm - daži jau gūst "neoficiālu atbalstu". Ja varat panākt, lai EFIDroid darbotos citā ierīcē, vienkārši ir nepieciešams process, lai to iekļautu lietojumprogrammā nosūtot izvilkšanas pieprasījumu uz EFIDroid git krātuve. M11kkaa arī mūs informēja, ka viņam ir nākotnes plāni paplašināt lietotni, lai, iespējams, atbalstītu sāknēšanas spraudņus un UEFI lietotnes (lai gan paturiet prātā, ka pašlaik tie ir tikai plāni).
Kā tas strādā
EFIDroid izmanto LK kā abstrakcijas slāni, lai mijiedarbotos ar ierīces aparatūru. Lietojumprogramma ļauj pilnībā izmantot šos komponentus, ko sniedz UEFI plašās iespējas, tostarp iespēja ielādēt Linux kodolu
vēlākais punkts.
EFIDroid izmanto Linux kodola bibliotēku kā līdzekli, lai apkopotu Linux kodolu kā programmatūras bibliotēku. Tas ļauj UEFI izmantot failu sistēmas draiverus, lai lasītu un rakstītu uz vairākiem sāknēšanas nodalījumiem un no tiem, kā arī dod iespēju sāknēties no vairākiem ROM vai atkopšanas vidēm. EFIDroid var arī parādīt kļūdu ziņojumus no iepriekš neveiksmīgas sāknēšanas. Radītājs pat ir pieminējis iespējamu Linux kodola bibliotēkas izmantošanu, lai nākotnē pievienotu skārienekrāna atbalstu.
Tam visam, protams, ierīcē ir nepieciešama root piekļuve un atbloķēts sāknēšanas ielādētājs bet tam nav nepieciešams pielāgots kodols.
Attēla kredīts: EFIDroid
Vairāk nekā tikai Multiboot
UEFI sāknēšanas ielādētāja ieviešana paver Android ierīcēm daudzas iespējas. UEFI vidē ir iespējami dažādi spraudņi, tostarp diagnostika, piemēram, Memtest86, komandrindas atvēršana un pat spēles. Lai gan ir nepieciešams atbalsts, lai īstenotu vairāk šo iespēju, EFIDroid joprojām piedāvā dažas galvenās funkcijas saderīgām ierīcēm. Neatkarīgi no tā, vai to izmanto vienkārši kā alternatīvu sāknēšanas ielādētāju ierīcēm, kurām var nebūt atkopšanas iespēju, vai kā rīku pārvaldībai un traucējummeklēšana vairākos ROM vai atkopšanas vidēs, šis rīks piedāvā visu iepriekš minēto un dara to ar lietotājam draudzīgu un tieša lietotāja saskarne lai palaistu.
Lai iegūtu turpmākas diskusijas, dodieties uz foruma pavediens vai sekojiet projektam zemāk esošajās saitēs!
EFIDroid vietnē Github
EFIDroid oficiālā vietne
EFIDroid's Slack kopiena
Vai esat iepriekš izmēģinājis EFIDroid? Vai vēlaties redzēt atbalstu savai ierīcei? Paziņojiet mums zemāk esošajos komentāros!