Logo hr.androidermagazine.com
Logo hr.androidermagazine.com

Projekt za vikende: izgradite mozilla boot gecko za svoj android pametni telefon

Sadržaj:

Anonim

Nisam koder. Jedva ga znam iz G ot-a i ne mogu se sjetiti koliko sam se puta pitao zašto adb neće raditi, tek kad sam otkrio zaboravio sam ponovo uključiti USB ispravljanje pogrešaka. Ovdje imam Linux na kutiji, ali ga ikada upotrebljavam samo kad sam raspoložen da u Jerryja bacim pola tuceta pitanja za pet minuta.

Također, nemam vratnu bradu.

Pa što u širokom, širokom sportskom svijetu radim na preuzimanju Xcode-a s MacBook Air-a (nema veze što sam do ovog proljeća cijeli život bio tip Windows), sinkronizirao iz Git reposa, sastavio kod i treptao operativni sustav Dosad sam svjesno ignorirao - pogotovo s obzirom da sam proveo 24 sata baveći se bolesnim djetetom, brinući se o bolesnom prijatelju i pripremajući se za mogući uragan, uglavnom ignorirajući moj stvarni posao?

Ja, očito, imam problema s treptajem. I tako sam se nedavno našao na Mozillinom novom operativnom sustavu, poznatom i pod nazivom "Gecko", na Samsung Nexus S.

Dobrodošli na projekt Boot to Gecko.

Kao što rekoh, nisam koder. Ali ja se volim brkati sa stvarima. I uspio sam u tome, kako moje mlade kćeri vole reći, sve … po … mojem … sebi. I ti možeš.

Čekaj - zašto dovraga ovo radiš?

Ovo je prvi u nizu koji ćemo nazvati našim projektima za vikende. Stvari koje inače ne biste mogli pokušati. Ali ako mi to možemo, možete i vi.

Rečeno je, nekoliko stvari koje ovdje neću učiniti za vas. Ovo neće biti detaljan pogled na to kako izraditi i fleksirati projekt Boot to Gecko. Ispričat ću vam široke poteze mog iskustva. Mozilla ima izvrsnu dokumentaciju i stvarno biste je trebali pročitati ako želite pokušati. (Vjerojatno ne bih uspio ispraviti sve u prijevodu.)

Druga stvar koju neću učiniti je da vas usmjerim na tuđu gradnju, proširivu kroz ClockworkMod. Možete to sami pretraživati. Ono što sam želio učiniti je zapravo sastavljati to što sam napravio na vlastitoj konverziji s telefonom.

I tako sam to i učinio.

Veze će vam trebati

Google je vaš prijatelj. Jednostavna pretraga "B2G" pronašla je sve što sam trebala.

  • Mozilla - Čizma do Gecka (za neuračunljivo objašnjenje B2G)
  • B2G na mreži za razvojne programere Mozilla (ovdje počinje pravi posao)
  • Izrada i instalacija Boot-a za Gecko

OK - sad, što dovraga radiš ovo?

Kako biste napravili od nule, prema Mozillau vam je potreban Mac ili Linux stroj. Imam oboje ovdje. Ali upute za Mac jednostavno su izgledale lakše. (Nema srama u tome, zar ne?) Ali i to ima smisla. Moguće je da ako imate Linux, lako možete instalirati sve alate koje je Mozilla navela. Mi? Ne tako puno. Ma Mac je to bio.

Za mene je stvarno bilo jednostavno kao ovo: Instalirajte Xcode iz Mac App Store-a, zatim upalite Terminal i pokrenite nekoliko naredbi. Napravio sam dovoljno tinkarniranja u Androidu da bih bio u redu s tim. Mozilla ima sjajan scenarij koji instalira sve što vam treba. Zatim sinkronizirate git skladište, sastavljate kôd i fleksirate ga na svoj Android uređaj kao i bilo koji drugi prilagođeni ROM. (I Mozilla ima scenarij i za taj posljednji dio, što stvari još olakšava.)

Što se tiče ciljanog uređaja na kojem gradite, imate opcije. Mozilla ih je podijelila u tri sloja:

  • Razina 1: Otoro (neka vrsta dev uređaja koji Mozilla koristi); Pandaboard; ARM ili x86 emulator; ili radnoj površini. Nije ono što sam tražio.
  • Razina 2: Samsung Nexus S i Nexus S 4G. Osjećam zajedničku temu ovdje. Telefoni koji se lako otključavaju, a Mozilla kaže kako ovo mijenja "promjene u sekundi". Imam Nexus S, tako da sam i pošao za tim.
  • Razina 3: Samsung Galaxy S2 i Galaxy Nexus. Ljudi lupetaju, ali Tier 2 je vaš najbolji snimak.

Dakle, to je pola bitke. Sada za preuzimanje, sastavljanje i flash B2G.

Bilo je i nekoliko izbora. Jedno je graditi na Linuxu. Mozilla opisuje sve potrebne alate koji će vam trebati, ali ne pokazuje gdje ih možete dobiti. To što sam Linux n00b, to je loše. Za većinu ostalih štrebera koji koriste jedan ili drugi distrokt, to bi trebalo biti manje.

Druga je mogućnost izrada na Macu. A Mozilla je to učinila glupo jednostavno.

Pa kako si to učinio?

Opet, to sam učinio na Macu. I zaista je bilo samo nekoliko osnovnih koraka koje je čak i moj nebradati vrat uspio slijediti.

  1. Morao sam instalirati Xcode, što je razvojno okruženje za Mac.
  2. Instalirao sam Homebrew za Mac.
  3. Vodio sam skriptu koju je Mozilla dala, a koja je provjeravala ostale preduvjete i potaknula me da ih instaliram ako je potrebno.

Trenutačno ću primijetiti da se činilo da su upute Mozille ukazale da je sve što moram učiniti bilo instalirati Xcode i pokrenuti skriptu; ostalo bi se pobrinulo za sebe. Ali prvo sam morao instalirati Homebrew. Nisam siguran je li to zbog nečega što sam učinio (ili nisam) učinio ili što već. Ali tako mi je uspjelo.

Dalje: Dohvati sav kod iz Gita. To je bilo jednostavno kao kopiranje i lijepljenje još nekoliko redaka u Terminal. Cool.

Zatim: Sastavite.

E sad, ovih nekoliko koraka potrajalo je neko vrijeme. Nisam siguran koliko dugo. Otišla sam i napravila stvari. Napravili smo kavu. Dovedite neke naloge. Napisala je knjigu. Trebalo je neko vrijeme na mom malom MacBook Airu. Očekivao sam to. Ovo nije pretjerano težak projekt, ali nije pretjerano brz. Pustio sam da stvari teku svojim putem i završio sam s blještavom slikom u novom direktoriju "B2G" moje MBA.

Vrijeme je za bljesak

Tako. Vrijeme je da zgrabite Nexus S. Trebat će, naravno, imati otključan uređaj za pokretanje sustava, a za njega treba biti pokrenut Android 4.0 Ice Cream Sandwich. (Mozilla ne govori ništa o Jelly Bean, ali shvatio sam i ja da radim s njom. Ne previše iznenađujuće.)

Uključite telefon u način brzog pokretanja i uključite ga. Ništa što prije nismo radili s Androidom, zar ne /

Mozilla je ovo opet učinila vrlo jednostavnim. Nisam se trudio popravljati svoje varijable puta, pa adb i fastboot normalno žive unutar jedne mape Android SDK-a, i to je to. Mogu se nositi s tim. Mozilla je pametno uključila sve to. Ali još bolje je to što je napravila mali scenarij koji sve radi. Provjerava je li bootloader otključan. Briše sve particije koje treba izbrisati. Tada treptaju nove slike. Potpuno praktično. To nisam ništa što nisam mogao učiniti, ali nisam ništa ako nisam povremeno lijen. Živjeli, Mozilla.

Ponovno pokreni i, bum. Povezali smo se u Gecko.

Stavite to zajedno i što imate?

A sada, zbog plodova našeg rada.

Donja linija

Dakle, to je Mozilla's Boot to Gecko na Samsung Nexus S. U stvari nije loš mali projekt. Trebalo je nekoliko sati, nexus S i nešto prostora na tvrdom disku, ali mozak nije previše oporezivao. Kad ga stavite na telefon, možete ga izraditi sigurnosnim kopijama pomoću prilagođenih Androidova oporavka, a zatim idite i odlazite kako želite.

Dao bih ovo 6 od 10 na ljestvici težine, samo zato što stvarno ne znam što radim kad je u pitanju sastavljanje koda. Ali prilično slijedim upute, a Mozilla je stvari učinila lijepim i jednostavnim. Ovo možete pokušati sami.

Možda ćemo zaraditi proviziju za kupovinu pomoću naših veza. Saznajte više.