Lokaðu auglýsingu

Apple kynnti í síðustu viku m.a nýja Apple TV með tvOS stýrikerfinu. Sú staðreynd að hægt er að setja upp forrit frá App Store í nýja svarta kassanum gladdi hönnuði vissulega mest.

Hönnuðir hafa tvo valkosti. Þeir geta skrifað innfædd forrit sem hefur fullan aðgang að Apple TV vélbúnaði. Tiltækt SDK (sett af bókasöfnum fyrir forritara) er mjög svipað því sem forritarar þekkja nú þegar frá iPhone, iPad og forritunarmálin eru þau sömu - Objective-C og yngri Swift.

En fyrir einfaldari forrit bauð Apple forriturum annan valmöguleika í formi TVML - Television Markup Language. Ef þér finnst nafnið TVML líta grunsamlega út eins og HTML, þá hefurðu rétt fyrir þér. Það er í raun álagningarmál byggt á XML og mjög svipað HTML, aðeins það er miklu einfaldara og hefur strangari setningafræði. En það er algjörlega fullkomið fyrir forrit eins og Netflix. Og notendur munu einnig njóta góðs af því að strangleiki TVML mun láta margmiðlunarforrit líta út og virka að miklu leyti eins.

Leið að fyrstu umsókn

Svo það fyrsta sem ég þurfti að gera var að hlaða niður nýju beta útgáfunni af Xcode þróunarumhverfinu (útgáfa 7.1 er fáanleg hérna). Þetta gaf mér aðgang að tvOS SDK og gat hafið nýtt verkefni sem var sérstaklega beint að fjórðu kynslóð Apple TV. Forritið getur verið tvOS-aðeins, eða hægt er að bæta kóðanum við núverandi iOS app til að búa til „alhliða“ app - líkan svipað og iPhone og iPad öpp í dag.

Vandamál eitt: Xcode býður aðeins upp á möguleikann á að búa til innbyggt forrit. En ég fann mjög fljótt hluta í skjölunum sem mun hjálpa forriturum að breyta þessari beinagrind og undirbúa hana fyrir TVML. Í grundvallaratriðum eru það nokkrar línur af kóða í Swift sem, bara á Apple TV, búa til hlut á öllum skjánum og hlaða meginhluta appsins, sem er þegar skrifaður í JavaScript.

Vandamál tvö: TVML forrit eru í raun mjög lík vefsíðum og því er allur kóði einnig hlaðinn af internetinu. Forritið sjálft er í raun bara "bootloader", það inniheldur aðeins lágmarks kóða og helstu grafísku þættina (application icon og þess háttar). Að lokum setti ég aðal JavaScript kóðann beint inn í appið og fékk að minnsta kosti möguleika á að birta sérsniðin villuboð þegar Apple TV er ekki tengt við internetið.

Þriðja litla vandamálið: iOS 9 og þar með tvOS krefst þess að öll samskipti við internetið fari fram dulkóðuð í gegnum HTTPS. Þetta er eiginleiki kynntur í iOS 9 fyrir öll forrit og ástæðan er þrýstingur á friðhelgi notenda og gagnaöryggi. Svo það verður nauðsynlegt að setja upp SSL vottorð á vefþjóninum. Það er hægt að kaupa það fyrir allt að $5 (120 krónur) á ári, eða þú getur notað til dæmis CloudFlare þjónustuna, sem sér um HTTPS af sjálfu sér, sjálfkrafa og án fjárfestingar. Annar kosturinn er að slökkva á þessari takmörkun fyrir forritið, sem er mögulegt í bili, en ég myndi örugglega ekki mæla með því.

Eftir nokkurra klukkustunda lestur á skjölunum, þar sem enn eru einstaka smávillur, vann ég mjög einfalt en virka forrit. Það sýndi vinsæla textann „Hello World“ og tvo hnappa. Ég eyddi um tveimur tímum í að reyna að fá hnappinn til að vera virkur og raunverulega gera eitthvað. En miðað við eldsnemma morguns valdi ég að fara að sofa... og það var gott.

Um daginn datt mér í hug að hlaða niður tilbúnu TVML forriti beint frá Apple. Ég fann það sem ég var að leita að mjög fljótt í kóðanum og hnappurinn var lifandi og virkaði. Meðal annars uppgötvaði ég líka fyrstu tvo hlutana af tvOS kennslunni á netinu. Bæði úrræðin hjálpuðu mikið, svo ég byrjaði á nýju verkefni og byrjaði á fyrstu alvöru umsókninni minni.

Fyrsta alvöru umsóknin

Ég byrjaði alveg frá grunni, fyrsta TVML síðan. Kosturinn er sá að Apple hefur útbúið 18 tilbúin TVML sniðmát fyrir forritara sem þarf bara að afrita úr skjölunum. Að breyta einu sniðmáti tók um klukkutíma, fyrst og fremst vegna þess að ég var að undirbúa API okkar til að senda fullbúið TVML með öllum nauðsynlegum gögnum til Apple TV.

Annað sniðmátið tók aðeins um 10 mínútur. Ég hef bætt við tveimur JavaScript-skjölum - megnið af kóðanum í þeim kemur beint frá Apple, svo hvers vegna að finna upp hjólið aftur. Apple hefur útbúið forskriftir sem sjá um að hlaða og birta TVML sniðmát, þar á meðal ráðlagðan efnishleðsluvísi og hugsanlega villuskjá.

Á innan við tveimur klukkustundum tókst mér að setja saman mjög bert en virka PLAY.CZ forrit. Það getur birt lista yfir útvarpsstöðvar, það getur síað það eftir tegund og það getur ræst útvarpið. Já, margt er ekki í appinu, en grunnatriðin virka.

[youtube id=”kLKvWC-rj7Q” width=”620″ hæð=”360″]

Kosturinn er sá að forritið er í rauninni ekkert annað en sérstök útgáfa af vefsíðunni sem er knúin af JavaScript og einnig er hægt að nota CSS til að breyta útlitinu.

Apple þarf samt nokkra hluti til að undirbúa. Forritstáknið er ekki eitt, heldur tvö - minna og stærra. Nýjungin er sú að táknið er ekki einföld mynd heldur inniheldur parallax áhrif og er samsett úr 2 til 5 lögum (bakgrunnur, hlutir í miðju og forgrunni). Allar virkar myndir í forritinu geta innihaldið sömu áhrif.

Hvert lag er í raun bara mynd á gagnsæjum bakgrunni. Apple hefur útbúið sitt eigið forrit til að setja saman þessar lagskiptu myndir og lofar að gefa út útflutningsforrit fyrir Adobe Photoshop fljótlega.

Önnur krafa er "Top Shelf" mynd. Ef notandinn setur appið á áberandi stað í efstu röðinni (á efstu hillunni) verður appið einnig að útvega efni fyrir skjáborðið fyrir ofan applistann. Það getur annað hvort verið bara einföld mynd eða það getur verið virkt svæði, til dæmis með lista yfir uppáhalds kvikmyndir eða, í okkar tilviki, útvarpsstöðvar.

Margir verktaki eru rétt að byrja að kanna möguleika nýja tvOS. Góðu fréttirnar eru þær að það er mjög auðvelt að skrifa efnisforrit og Apple hefur farið langt fyrir þróunaraðila með TVML. Að byggja upp forrit (til dæmis PLAY.CZ eða iVyszílő) ætti að vera auðvelt og hratt. Allar líkur eru á því að mikill fjöldi forrita verði tilbúinn á sama tíma og nýja Apple TV fer í sölu.

Það verður meira krefjandi að skrifa innfædd forrit eða flytja leik frá iOS til tvOS, en ekki mikið. Stærsta hindrunin verður mismunandi stjórntæki og hámark 200MB fyrir hvert forrit. Innbyggt forrit getur aðeins hlaðið niður takmörkuðum hluta gagna úr versluninni og allt annað verður að hlaða niður til viðbótar og það er engin trygging fyrir því að kerfið eyði ekki þessum gögnum. Hins vegar munu forritarar örugglega takast á við þessa takmörkun fljótt, einnig þökk sé framboði á setti af verkfærum sem kallast "App Thinning", sem eru einnig hluti af iOS 9.

Efni: , ,
.