Sladkarija na M
Google je predstavil novosti, ki jih uporabniki Androida lahko pričakujejo jeseni. Nekaj jih bodo deležni skozi nadgradnjo programa Play Services in določenih aplikacij, precej novosti pa bo tudi v prenovi samega sistema. Za razvijalce je zato že nared predogled novega, sicer še nedokončanega Androida »M« (sedaj znanega že kot Android 6.0, up. ur.), ki smo ga preizkusili na telefonu Nexus 5.
Dobrodošlica, opozorilo in uvoz v oblaku shranjenih nastavitev ter programov.
Google je na redni letni konferenci za razvijalce, Google I/O, predstavil novosti prihajajočega Androida, ki bo po ustaljeni navadi poimenovan s sladico na »M«. Katero točno, še niso izdali. Bo to Milkshake, Marshmallow ali Macadamia nut cake? Zadnje ime menda uporabljajo interno v Googlu.
Razvojne različice M za naprave Nexus 5, 6 in 9 so namenjene predvsem razvijalcem programske opreme, sistemske podobe pa lahko prenesemo s spleta in jih z orodjem fastboot iz razvojnega kompleta (SDK) namestimo na odklenjeno napravo (odklepanje prav tako omogoča fastboot). Namestitev nam pobriše celotno vsebino naprave, stabilnost delovanja pa niti približno ni zagotovljena, torej se ne igrajmo z njo, če ne vemo točno, kaj počnemo (več v okvirčku). Po drugi strani se bo razvojna različica M lahko sama nadgrajevala (OTA update), kot je to v navadi za končne različice, kar pomeni, da bodo razvijalci obveščeni o novostih in bodo lahko hitro nadgradili razvojno napravo.
Po zadnji oblikovni prenovi s snovnim oblikovanjem (material design) Android »M« ne prinaša večjih oblikovalskih osvežitev, se pa precej spreminja pod pokrovom, predvsem v želji po enostavnejši in varnejši uporabi, še učinkovitejšem upravljanju energije, novem poskusu mobilnega plačevanja in predvsem z željo Googla, da pridobi informacije o uporabnikih, ki so z rabe spletnih strani presedlali na rabo aplikacij. Hkrati Android »M« lepo ponazarja, koliko funkcionalnosti sistema je Google prenesel v vsemogočno aplikacijo Play Services, saj bodo številne novosti na voljo tudi za naprave s starejšimi različicami sistema, dovolj bo osvežiti ključni program Androida (kar se običajno zgodi samodejno, neučakanim pa lahko pomaga spletišče apkmirror.com).
Pozdravni zaslon ter prenovljena zaganjalnik programov in izbirnik pripomočkov.
Pravice in baterija
Namestitev M prinaša dobrodošlo osvežitev. Sistem nas takoj vpraša, s katere v oblaku shranjene rezervne kopije želimo obnoviti namestitev in tudi katere prej nameščene aplikacije naj namesti na nov sistem. Tako lahko odpravimo dolgotrajno čakanje, ko se po prvi prijavi na prazno napravo namešča prav vse mogoče iz naše zgodovine. Ohranja se tudi možnost prenosa nastavitev z druge naprave ob pomoči izmenjave NFC. Uporabnikom prijave v dveh korakih (two-step authentication) je olajšan vstop v prazno napravo (ko aplikacija za generiranje kod seveda ni na voljo). Sistem ob prvi prijavi, po vnosu gesla, med drugim ponuja tudi prejem dodatne zaščitne kode prek sporočila SMS, ki ga ob dostavi samodejno prepozna in nas takoj spusti naprej.
Nekoliko je osvežen zaganjalnik, ki seznam aplikacij opremlja z dodatno vrstico z najpogosteje pognanimi na vrhu in s poudarjenimi črkami ob levem robu za lažje preiskovanje. Iskanje je sicer na voljo tudi neposredno z dotikom ikone lupe. Nekoliko preglednejši je tudi prikaz pripomočkov za osnovni zaslon (widgets), ki vse pripomočke enega programa združi v eno vrstico.
Pomembna novost Androida M je prenovljen sistem upravljanja pravic. Do zdaj smo bili uporabniki ob namestitvi nove aplikacije soočeni z večinoma nepregledno množico dovoljenj, ki smo jo običajno, brez globljega razmišljanja o posledicah, tudi odobrili. Zdaj so dovoljenja združena v manjše število bolj zgovornih skupin (npr. lokacija, kamera, stiki …), ki jih lahko naknadno upravljamo v nastavitvah, bodisi v celoti za določeno skupino bodisi za vsako nameščeno aplikacijo posebej. Še boljše bo z uporabo aplikacij, prevedenih prav za M. Te se bodo namestile brez spraševanja, vendar bodo morale pridobiti dovoljenje uporabnika v trenutku, ko bodo prvič želele izvesti kočljivejšo operacijo, npr. prebrati stike v telefonu, poslati sporočilo SMS ali npr. poizvedovati o trenutni lokaciji. Pri starejših aplikacijah sicer lahko upravljamo pravice, vendar nas M opozarja, da to lahko povzroči njihovo nepravilno delovanje. Ker bodo razvijalci večinoma morali le znova prevesti obstoječo kodo, verjetno ne bo trajalo dolgo, ko bo večina aplikacij nadgrajenih na nov sistem dovoljenj.
Vzdržljivost baterije je seveda težava vseh mobilnih naprav in M gre še korak dlje v zagotavljanju čim daljšega stanja pripravljenosti. Novost je režim dremanja (Doze), ki povsem uspava sicer aktivne aplikacije, ko se zaslon ugasne in ni zaznati premikanja. Na tablici Nexus 9 je aktivirani način dremanja menda celo podvojil čas pripravljenosti naprave. Hkrati M prinaša podporo za simetrični priključek USB-C, priklop kabla USB pa zdaj aktivira zgolj hitro polnjenje (če ga naprava omogoča), način izmenjave podatkov moramo naknadno izbrati ročno. Prek kabla USB bo mogoče celo iz baterije polniti drugo napravo, če bomo pač razpolagali s presežkom, ki se mu bomo lahko odrekli.
Znova prevedene aplikacije lahko izkoristijo tudi učinkovitejši način izbiranja besedila. Še vedno ga aktiviramo z dolgim pritiskom, v označevanju naprej pa samodejno označuje celotne besede. Označevalnik kasneje lahko vrnemo nazaj do znaka natančno. Hkrati se nad označenim besedilom takoj pojavi minimalistična orodjarna, ki poleg operacij za delo z odložiščem lahko ponuja tudi dodatne storitve, odvisno od potreb aplikacije (npr. »deli na družabnih omrežjih«).
Nov sistem pravic prinaša preglednejše skupine in možnost naknadnega urejanja na ravni pravice ali posamezne aplikacije.
Namestitev predogleda Androida M
Za namestitev razvojne različice torej potrebujemo napravo Nexus (5, 6, 9 ali Player) ter nekaj spretnosti. Pozor! Sledenje tem napotkom opravljate na lastno odgovornost, saj lahko z napačnim korakom napravo naredite neuporabno in izgubite garancijo.
Potrebujemo zadnje gonilnike USB, da osebni računalnik prepozna napravo v načinih »fastboot« in »recovery«. Lahko jih namestimo z razvojnim kompletom Android SDK (developer.android.com/sdk#Other). Če želimo samo gonilnike, izberemo samostojen komplet SDK (SDK Tools Only), ki ga namestimo, nato pa v upravniku paketov, programu SDK Manager, vklopimo in namestimo samo opciji Tools | Platform tools ter Extras | Google USB Driver.
V sami napravi je najprej treba omogočiti možnosti za razvijalce. V nastavitvah prikličemo možnost O telefonu (About phone) ali O tablici (About tablet) in desetkrat potapkamo oznako Delovna različica (Build number). V splošnih nastavitvah najdemo novo skupino Možnosti za razvijalce (Developer options), kjer vklopimo Odpravljanje težav s povezavo USB (USB debugging).
Da preverimo pravilno nameščene gonilnike in nastavitve, priklopimo napravo na osebni računalnik s kablom USB ter v ukazni vrstici (command prompt, shell) vpišemo adb devices
Prikazati se mora koda oznake vsaj ene naprave (List of devices attached).
Zdaj lahko napravo poženemo v načinu zaganjalnika.
adb reboot bootloader
Če naprava ni odklenjena, bo na zaslonu izpisano »LOCK STATE – locked«. Če je naprava že odklenjena, bo pripis »unlocked« in lahko nadaljujemo namestitev. Sicer izvedemo odklepanje, ki ravno tako pobriše vsebino celotne naprave, z ukazom fastboot oem unlock
Predogled Androida »M« najdemo v spletu (na naslovu developer.android.com/preview). Izberemo Preview Downloads in prenesemo ustrezno različico sistemskih podob za našo napravo. Predogled Androida »M« razpakiramo, da pridemo do datotek flash-all.bat (za Okna) oz. flash-all.sh (za Linux) in preostanka vsebine paketa. Namestitev potem opravi ukaz flash-all
Počakamo na konec postopka. Vnovični zagon je malo daljši, saj se prvič vsi programi še prevedejo za izvajalni sistem ART.
Iz aplikacij v splet
Google se v svetu mobilnih aplikacij počuti vse bolj ogroženega, saj mobilni uporabniki vse manj brskajo po spletu, kjer kraljuje, ter vse več časa prebivajo v ograjenih vrtičkih različnih namenskih aplikacij, ki pa jih Google ne pozna prav dobro. Nekaj novosti M je posvečenih prav odpravljanju tega Googlovega problema. Najprej so tu prilagodljivi zavihki brskalnika Chrome, ki je kot že v Liziki tudi v M privzeto nameščen. Veliko aplikacij namreč ponuja odpiranje različnih povezav v splet in so za to morale ali uporabiti lasten uporabniški vmesnik okrog sistemskega pregledovalnika webview ali prenesti prikaz spletne povezave v drug brskalnik. Zdaj lahko uporabijo prilagojen pregledovalnik Chrome, ki npr. že pozna uporabnikova shranjena gesla, ponuja pa še kup drugih prilagoditev, npr. vnaprejšnje nalaganje povezave v ozadju. Denimo, da uporabnik pregleduje tok sporočil v Twitterju in vmes najde povezavo na sliko v Instagramu. Aplikacija lahko takoj naroči prilagojenemu Chromu, da nevidno naloži povezavo v ozadju. Če uporabnik nanjo tudi zares klikne, se mu lahko prikaže precej hitreje, hkrati pa je uporabniški vmesnik prebarvan v barve Twitterja in opremljen s povsem svojo orodno vrstico, ki ponuja prehod nazaj v aplikacijo in tudi dodatne storitve v zvezi s pregledovano vsebino.
Možnosti za razvijalce razkrijejo dodatno témo, ki se lahko preklopi samodejno, ter urejevalnik ploščic hitrih nastavitev.
Android »M« bo prinesel tudi izboljšano storitev Now on tap. Levo je trenutno stanje v predogledu, desna slika pa je s predstavitve na Google I/O.
Android »M« ponuja tudi možnost, da se določene aplikacije predstavijo kot verodostojne za odpiranje specifičnih vzorcev povezav URL. Omenjeni Twitter se tako lahko s certifikatom predstavi kot edini zveličavni za odpiranje vzorcev povezav http[s]://[www.]twitter.com/*, saj lahko v svojem opisu vsebuje »ključ« za »ključavnico«, ki je objavljena kot posebna datoteka prav na tem spletnem naslovu. Če bomo kjerkoli drugje v sistemu želeli odpreti tovrstno povezavo, bo Android samodejno predal povezavo Twitterju, ne da bi uporabniku ponujal različne možnosti. Nastavljene vzorce in programe bomo lahko urejali tudi sami, v nastavitvah.
Ker se uporabniki utapljamo v številnih geslih, je M prinesel sistemsko rešitev za njihovo shranjevanje, ki kombinira shranjena gesla brskalnika z gesli ustrezno prilagojenih aplikacij. Nova storitev se imenuje Smart Lock in je del Play Services, torej bo na voljo tudi za starejše različice sistema. Pri zaščiti uporabnika M sicer prinaša tudi novo, standardizirano sistemsko programersko knjižnico za prepoznavanje prstnih odtisov, kar verjetno pomeni, da bodo letošnji novi Nexusi končno opremljeni tudi s tipalom zanje.
Prav revolucionarna pa je predstavitev nadgradnje sistema Google Now, poimenovana »Now on tap«. Žal v predogledu Androida M še ni omogočena, tako da jo lahko opišemo le po videnem na predstavitvi Google I/O. Kot rečeno, Google želi spoznati več o aplikacijah, ki jih uporabljamo. Če razvijalci Googlu omogočijo indeksiranje aplikacije, bodo uporabniki z dolgim pritiskom na tipko domov lahko priklicali kontekstno občutljivega pomočnika Now, ki zna sam po sebi že danes npr. povedati, kje smo nazadnje parkirali avto. Kako pa je videti raba Now on tap? Denimo, da v aplikaciji za prebiranje sporočil SMS beremo sporočilo žene, da zamuja in je treba pobrati otroke v vrtcu. Dolg pritisk na tipko domov aktivira pomočnika, ki bo iz avtorice sporočila razbral za koga gre, iz besedila sporočila pa kontekst in takoj ponudil nekaj pripomočkov v obliki kartic, kot sta »Prikaži pot do vrtca« ali »Nastavi opomnik«. Slednji lahko celo ugane čas opomnika iz našega trenutnega položaja in trenutne prometne gneče do sistemu že od prej znane lokacije vrtca (saj jo pogosto obiskujemo z avtom).
Če vam vse skupaj zveni kot strašljiv poseg v zasebnost, potem Now on tap verjetno ni za vas. Vsekakor Googlu odpira pot, da tudi aplikacije in njihovo uporabo indeksira podobno, kot to počne v spletu. Ali bodo storitve Now on tap zares tako uporabne, da se bomo prostovoljno odrekli še nekaj zasebnosti, pa je odvisno predvsem od razvijalcev algoritmov strojnega učenja v Mountain Viewu. Razvijalci bodo v svojih aplikacijah Now on tap zlahka omogočili, in to brez večjih posegov v kodo, seveda če se bodo odločili storitev sploh podpreti. Pamet storitve Now on tap pa bo še kar nekaj časa omejena predvsem na aplikacije v angleščini.
Korenjenje
Skupnost hekerjev ne počiva in je že omogočila korenski dostop (root) tudi za Android »M«. Ker je Google že objavil izvirno kodo za predogled M, je v kodi jedra z minimalno spremembo mogoče onemogočiti zaščito SELinux in jedro znova prevesti. Prvi je bil (imenu primerno) Racer, ki svoje dosežke objavlja na forumu XDA.
Njegovo popravljeno jedro lahko najdemo tu: goo.gl/BYwaAm. Potem lahko uporabimo beta različico paketa za korenski dostop SuperSU 2.49, s katerim je pohitel znani heker Chainfire, dostopen pa je tu: goo.gl/83XKmL. Oboje shranimo na telefon (lahko prek običajne povezave za prenos s kablom USB ali z ukazom adb push).
Nezaščiteno jedro in beta paket SuperSU namestimo skozi alternativni obnovitveni sistem TWRP (glej naslednji okvirček) z ukazom Install in izbiro ustreznih datotek (najprej novo jedro, priporočamo ponovni zagon, potem še SuperSU).
Alternativna nezaščitena jedra, ki so prav tako že na voljo (uporabite iskanje na XDA Developers forumu): Despair, Code Blue, hells-Core.
Plačila in eksperimenti
Google po mlačnem sprejemu aplikacije Wallet znova poskuša tudi s sistemom za elektronsko plačevanje. Zdaj je poimenovan Android Pay in naj bi s kombinacijo strojnega prepoznavanja prstnih odtisov in novih sistemskih storitev ter številnih partnerjev, ki so že privolili v sodelovanje (najbrž motivirani z uspešnim pohodom Appla tudi na to področje), prinesel enostavno in uspešno rešitev. Novosti naj bi se v kombinaciji novih aplikacij (storitev bo npr. delovala tudi v nekaterih bančnih e-aplikacijah) in nadgradnje storitev Play Services znašle tudi na starejših napravah.
Z nekaj hekanja lahko pridemo do prikaza dveh aplikacij hkrati (več v okvirčku). V seznamu zadnjih aplikacij izberemo zgornje ali spodnje okno oziroma celoten zaslon. Povsem desno hkrati na zaslonu vidimo novo aplikacijo Photos, pod njo pa Maps. Ne vemo, ali se bo reč obdržala do končne različice.
Android »M« prinaša tudi eksperimentalno podporo za prikaz več oken aplikacij hkrati in prilagajanje videza sistema (več v okvirčku), ni pa jasno, ali bodo »preživele« do končne različice ali so le testiranje za kdaj drugič. Jasno pa je že, da bo nastavljanje glasnosti zdaj nekoliko lažje in razumljivejše, čeprav se skoraj nespremenjen ohranja v Liziki predstavljen sistem prioritetnih prekinitev.
Google je na konferenci I/O predstavil še kup novosti, ki pa so del širšega ekosistema: od povsem prenovljene storitve Photos z neomejenim brezplačnim prostorom (s stiskanjem slik), prek družinskega načina rabe tržnice programov Play Store, zemljevidov Maps, ki lahko usmerjajo brez spletne povezave in nove kartonske škatle za navidezno resničnost, do poenostavljenega Androida, poimenovanega Brillo, ki bo skupaj s tkaninami, občutljivimi na dotik (Project Jacquard), in z miniaturnim radarjem (Project Soli), ki lahko prepoznava kretnje, omogočil povsem nove naprave in prihajajoči internet stvari.
Android »M«
Operacijski sistem za mobilne naprave
Proizvaja: Google
Na voljo: kot sistemska podoba za naprave Nexus 5, 6, 9 in Player
Splet: developer.android.com/preview
✓ Zanimive (obljubljene) novosti.
✗ Še nedokončano, primerno le za razvijalce in pustolovce.
Nekaj zvijač za M
V razvojni različici M lahko najdemo nekaj dodatnih možnosti. Dostopne so v možnostih za razvijalce, ki jih tudi v M omogočimo na enak način, kot je opisano zgoraj.
Najprej imamo na voljo urejanje ploščic hitrih nastavitev, ki jih lahko povlečemo z vrha. Urejevalnik omogočimo s stikalom Prikaži uglaševalnik upor. vmes. sistema (Show SystemUI Tuner), kar je 7. možnost pri vrhu. Vklopljeno stikalo med splošne nastavitve čisto na koncu doda skupino System UI Tuner, zato se vrnemo korak nazaj in čisto na dnu seznama skupin nastavitev izberemo novo možnost. Če bo reč preživela do končne različice M, se zdi, kot da gre za kompleksnejše ogrodje spreminjanja videza sistema. Trenutno je na voljo le možnost Quick Settings, ki odpre urejevalnik ploščic hitrih nastavitev.
Druga posebna možnost sledi urejevalniku videza v možnostih za razvijalce. To je nastavitev Tema (Theme), kjer lahko izberemo alternativno temno sistemsko témo ali celo samodejno preklapljanje tém, glede na dan ali noč.
Tretja možnost, za katero ne vemo, ali bo v dokončanem M uradno podprta, je sistemska podpora prikazu več programov na zaslonu hkrati. Zanjo moramo opraviti malo globlji poseg v sistem. Potrebovali bomo alternativno način obnovitve (recovery), priporočamo TeamWin Recovery (dostopen na spletnem naslovu twrp.me/devices). Ko prenesemo ustrezno različico in jo razpakiramo, jo namestimo prek povezave USB. Ustrezno datoteko .img zapišemo na ustrezni razdelek pomnilnika z zaporedjem ukazov:
adb reboot bootloader
fastboot flash recovery twrp-2.8.6.1-hammerhead.img
Zgoraj navedeno velja za TWRP 2.8.6.1 za Nexus 5, ime datoteke je lahko drugačno za drugo različico ali drugo napravo. Napravo poženemo v načinu Recovery ter v TWRP izberemo »Mount« in se prepričamo, da je vklopljeno stikalo »System«.
Pridobiti in popraviti moramo sistemsko datoteko, kar opravi ukaz
adb pull /system/build.prop
Na računalnik smo dobili datoteko build.prop, kjer z urejevalnikom navadnega besedila popravimo vrstico
ro.build.type=user v ro.build.type=userdebug
Datoteko shranimo in vrnemo v Android z ukazom
adb push build.prop /system/
Vnovič poženemo sistem in v možnostih za razvijalce bomo malo nižje, v skupini Risba (Drawing), našli stikalo Način z več okni (Multi-window mode). Če ga vklopimo, bomo na seznamu zadnjih programov (tretja sistemska tipka spodaj, s simbolom kvadrata) opazili tudi simbol položaja. S klikom nanj lahko izberemo, ali se izbrani program pokaže na zgornji ali spodnji polovici zaslona.