Logo sk.androidermagazine.com
Logo sk.androidermagazine.com

Víkendový projekt: vytvorte mozilla's boot pre gecko pre váš Android smartphone

Obsah:

Anonim

Nie som kódovač. Sotva viem, že to z G ot, a nemôžem si spomenúť, koľkokrát som premýšľal, prečo ADB nebude fungovať, len aby som zistil, že som zabudol zapnúť ladenie USB - znova. Mám tu Linux na krabici, ale používam ho iba vtedy, keď mám náladu, že na Jerryho budem mať polhodinu otázok v rozpätí piatich minút.

Tiež nemám krk.

Takže čo v širokom a širokom svete športu robím sťahovaním Xcode na svojom MacBook Air (nevadí, že až do tejto jari som celý život bol Windows chlapom), synchronizujem sa z Git repozitárov, kompilujem kód a blikam operačný systém Doteraz som vedome ignoroval - najmä vzhľadom na to, že som strávil 24 hodín jednaním s chorým dieťaťom, staral som sa o chorého priateľa a pripravoval som sa na pravdepodobné hurikány a do veľkej miery som ignoroval svoju skutočnú prácu?

Zrejme mám problém s blikaním. A tak som sa nedávno ocitol pri uvádzaní operačného systému Mozilla, ktorý sa nazýva „Gecko“, do telefónu Samsung Nexus S.

Vitajte v projekte Boot to Gecko.

Ako som povedal, nie som kódovač. Ale rád sa bavím s vecami. A podarilo sa mi to, ako to hovoria moje mladé dcéry, všetko … prostredníctvom … môjho … ja. A tiež môžete.

Počkaj - prečo to sakra robíš?

Toto je prvý zo série, ktorý budeme nazývať víkendové projekty. Veci, ktoré by ste sa inak nemohli pokúsiť. Ale ak to dokážeme, môžete aj vy.

To znamená, že je tu pár vecí, ktoré tu pre vás nebudem robiť. Nebude to podrobný pohľad na to, ako zostaviť a urýchliť projekt Boot to Gecko. Dám ti široké skúsenosti z mojej skúsenosti. Mozilla má vynikajúcu dokumentáciu. Ak sa o to pokúsite, mali by ste si ju prečítať. (Pravdepodobne by som nedokázal dostať všetko správne v preklade.)

Ďalšia vec, ktorú nebudem robiť, je nasmerovať ťa na stavbu niekoho iného, ​​flashableMod. Môžete to hľadať sami. To, čo som chcel urobiť, bolo to, že som to zostavil na základe môjho vlastného sklonu k telefónu.

A tak som to urobil.

Odkazy, ktoré budete potrebovať

Google je váš priateľ. Jednoduché vyhľadávanie výrazu „B2G“ našlo všetko, čo som potreboval.

  • Mozilla - Boot to Gecko (pre nerozumné vysvetlenie B2G)
  • B2G v Mozilla Developer Network (tu začína skutočná práca)
  • Budovanie a inštalácia zavádzania do Gecka

Dobre - na čom to sakra robíš?

Ak chcete stavať od nuly, podľa Mozilly potrebujete buď počítač Mac alebo Linux. Mám tu oboch. Pokyny pre Mac však vyzerali jednoduchšie. (V tom nie je hanba, však?) Ale to dáva zmysel. Je pravdepodobné, že ak používate Linux, môžete ľahko nainštalovať všetky uvedené nástroje Mozilly. Me? Nie veľmi. Takže Mac to bol.

Bolo to pre mňa také jednoduché: Nainštalujte Xcode z Mac App Store, potom spustite Terminál a spustite niekoľko príkazov. Urobil som dosť drotárstva v systéme Android, aby som bol v poriadku. Mozilla má skvelý skript, ktorý nainštaluje všetko, čo potrebujete. Potom synchronizujete úložisko git, skompilujete kód a prenesiete ho do svojho zariadenia s Androidom ako každé iné vlastné ROM. (A Mozilla má tiež skript pre túto poslednú časť, čo veci ešte zjednodušuje.)

Pokiaľ ide o cieľové zariadenie, pre ktoré staviate, máte možnosti. Mozilla ich rozdelila do troch úrovní:

  • Úroveň 1: Otoro (nejaký druh zariadenia, ktoré Mozilla používa); PandaBoard; emulátor ARM alebo x86; alebo na pracovnej ploche. Nie to, čo som hľadal.
  • Úroveň 2: Samsung Nexus S a Nexus S 4G. Cítim tu spoločnú tému. Ľahko odomykateľné telefóny a Mozilla hovorí, že tieto zmeny „sekundárne prijímajú“. Mám okolo seba zariadenie Nexus S, takže som za tým išiel.
  • Úroveň 3: Samsung Galaxy S2 a Galaxy Nexus. Ľudia sa hrávajú, ale úroveň 2 je vaša najlepšia strela.

To je polovica bitky. Teraz stiahnite, skompilujte a Flash B2G.

Bolo tu tiež niekoľko možností. Jedným z nich je stavať na krabici Linux. Mozilla vysvetľuje všetky potrebné nástroje, ktoré potrebujete, ale neukazuje vám, kde ich získať. Ja som Linux n00b, to je zlá vec. Pre väčšinu ostatných hlupákov, ktorí používajú jednu alebo druhú distro, by to malo byť menej.

Druhou možnosťou je stavať na počítači Mac. A Mozilla to urobila hlúpo jednoduchým.

Ako ste to urobili?

Znova som to urobil na počítači Mac. A skutočne existovalo len niekoľko základných krokov, ktoré dokázal sledovať aj môj bradatý krk.

  1. Musel som nainštalovať Xcode, čo je vývojové prostredie pre Mac.
  2. Nainštaloval som Homebrew pre Mac.
  3. Spustil som skript, ktorý poskytla Mozilla, ktorý skontroloval ďalšie predpoklady a vyzval ma, aby som ich v prípade potreby nainštaloval.

Na tomto mieste si všimnem, že pokyny Mozilly naznačovali, že všetko, čo som musel urobiť, bolo nainštalovať Xcode a potom spustiť skript; zvyšok by sa o seba postaral. Najskôr som však musel nainštalovať Homebrew sám. Nie som si istý, či je to kvôli niečomu, čo som urobil (alebo neurobil) alebo čo. Ale takto to pre mňa fungovalo.

Ďalej: Načítať celý kód z Gitu. Bolo to také jednoduché ako kopírovanie a vkladanie ďalších niekoľkých riadkov do terminálu. Pohode.

Potom: Kompilujte.

Týchto posledných pár krokov teraz trvalo. Nie som si istý, ako dlho. Išiel som preč a robil veci. Urobil si kávu. Urobil nejaké pochôdzky. Napísal knihu. Chvíľu to trvalo na mojej malej MacBook Air. Čakal som to. Toto nie je príliš ťažký projekt, ale nie je ani príliš rýchly. Nechal som veci bežať a skončil s obrázkom flash v novom adresári „B2G“ môjho MBA.

Čas na blesk

So. Je čas chytiť si Nexus S. Bude samozrejme potrebné odomknutý bootloader a musí byť spustený Android 4.0 Ice Cream Sandwich. (Mozilla nehovorí nič o Jelly Beanovej, ale musím s tým tiež pracovať. Nie príliš prekvapujúce.)

Zapnite telefón do režimu rýchleho spustenia a zapojte ho. Nič so službou Android, ktorú sme doteraz neurobili, nie je správne, Mozilla to opäť zjednodušila. Neobťažoval som sa určovať premenné cesty, takže adb a fastboot zvyčajne žijú v jednom priečinku mojej súpravy Android SDK, a to je všetko. S tým sa môžem vyrovnať. Mozilla to všetko inteligentne zahrnula. Ale ešte lepšie je, že vytvoril malý skript, ktorý robí všetko. Kontroluje, či je bootloader odomknutý. Vymaže všetky oddiely, ktoré je potrebné vymazať. Potom bliká nové obrázky. Úplne praktické. To nie je nič, čo by som nemohol urobiť sám, ale nie som nič, ak nie občas lenivý. Na zdravie, Mozilla.

Reštartujte počítač a spustite boom. Zaviedli sme do Gecka.

Zostavte to a čo máte?

A teraz, za plody našej práce.

Spodný riadok

Takže to je Mozilla Boot to Gecko na Samsung Nexus S. Vlastne to nie je zlý projekt. Trvalo to pár hodín, funkčný Nexus S a trochu miesta na pevnom disku, ale príliš to nešlo o zdanenie mozgu. Keď ho na telefóne zazálohujete, môžete ho zálohovať pomocou vlastných vymožení systému Android a potom podľa potreby prichádzať a odchádzať.

Toto by som dal 6 z 10 na stupnici obtiažnosti len preto, že naozaj neviem, čo robím, čo sa týka kompilácie kódu. Ale postupujem celkom dobre a Mozilla urobila veci peknými a ľahkými. Toto je pokus, ktorý si môžete vyskúšať sami.

Môžeme získať províziu za nákupy pomocou našich odkazov. Uč sa viac.