Apple a settimana passata hà presentatu, frà altre cose u novu Apple TV cù u sistema operatore tvOS. U fattu chì l'applicazioni da l'App Store ponu esse installate in a nova scatula nera certamenti hà fattu i sviluppatori più felici.
I sviluppatori anu duie opzioni. Puderanu scrive una app nativa chì hà accessu sanu à u hardware Apple TV. U SDK dispunibule (set di biblioteche per i sviluppatori) hè assai simili à ciò chì i sviluppatori cunnosci digià da l'iPhone, l'iPad, è i linguaggi di prugrammazione sò listessi - Objective-C è u più ghjovanu Swift.
Ma per l'applicazioni più simplici, Apple offre à i sviluppatori una seconda opzione in forma di TVML - Television Markup Language. Se pensate chì u nome TVML s'assumiglia suspiciosamente à HTML, avete ragione. Hè veramente un linguaghju di marcatura basatu in XML è assai simili à HTML, solu hè assai più simplice è hà una sintassi più stretta. Ma hè assolutamente perfettu per applicazioni cum'è Netflix. È l'utilizatori prufittàranu ancu, perchè a strettezza di TVML farà chì l'applicazioni multimediali pareranu è funzionanu assai listesse.
Percorsu à a prima applicazione
Allora a prima cosa ch'e aghju da fà era scaricà a nova versione beta di l'ambiente di sviluppu Xcode (a versione 7.1 hè dispunibule). quì). Questu m'hà datu l'accessu à u SDK tvOS è hà sappiutu inizià un novu prughjettu specificamente destinatu à a quarta generazione Apple TV. L'app pò esse solu per tvOS, o u codice pò esse aghjuntu à una app iOS esistente per creà una app "universale" - un mudellu simili à l'app iPhone è iPad oghje.
Prublemu unu: Xcode offre solu a capacità di creà una app nativa. Ma aghju trovu assai rapidamente una sezione in a documentazione chì aiutarà i sviluppatori à cambià stu scheletru è preparalli per TVML. In fondu, sò uni pochi di linee di codice in Swift chì, solu nantu à l'Apple TV, creanu un ughjettu à schermu pienu è carica a parte principale di l'app, chì hè digià scrittu in JavaScript.
Prublemu dui: l'applicazioni TVML sò veramente assai simili à una pagina web, è per quessa tuttu u codice hè ancu carricatu da Internet. L'applicazione stessa hè in realtà solu un "bootloader", cuntene solu un minimu di codice è l'elementi grafichi più basi (icona di l'applicazione è simili). In fine, aghju riesciutu u codice JavaScript principale direttamente in l'app è aghju avutu a capacità di almenu vede un missaghju d'errore persunalizatu quandu l'Apple TV ùn hè micca cunnessu à Internet.
U terzu picculu prublema: iOS 9 è cun ellu tvOS esige strettu chì tutte e cumunicazioni versu l'Internet sò criptate via HTTPS. Questa hè una funzione introdutta in iOS 9 per tutte l'applicazioni è u mutivu hè a pressione nantu à a privacy di l'utilizatori è a sicurità di dati. Dunque, serà necessariu implementà un certificatu SSL in u servitore web. Pò esse acquistatu per menu di $ 5 (120 curone) annu, o pudete aduprà, per esempiu, u serviziu CloudFlare, chì curarà HTTPS da ellu stessu, automaticamente è senza investimentu. A seconda opzione hè di disattivà sta restrizzione per l'applicazione, chì hè pussibule per avà, ma ùn l'aghju certamente micca cunsigliatu.
Dopu qualchì ora di leghje a ducumentazione, induve ci sò sempre errori minori occasionali, aghju travagliatu una applicazione assai basica ma funzionante. Hè mostratu u testu populari "Hello World" è dui buttoni. Aghju passatu circa duie ore per pruvà à ottene u buttone per esse attivu è veramente fà qualcosa. Ma cunsiderendu e prime ore di a matina, aghju preferitu andà à dorme... è era una bona cosa.
L'altru ghjornu, aghju avutu l'idea luminosa di scaricà una applicazione TVML pronta pronta direttamente da Apple. Aghju trovu ciò chì cercava assai rapidamente in u codice è u buttone era vivu è travagliatu. Frà altre cose, aghju ancu scupertu i primi dui parti di u tutoriale tvOS in Internet. I dui risorsi anu aiutatu assai, cusì aghju principiatu un novu prughjettu è hà cuminciatu a mo prima applicazione vera.
Prima applicazione vera
Aghju cuminciatu cumpletamente da zero, a prima pagina TVML. U vantaghju hè chì Apple hà preparatu 18 mudelli TVML pronti per i sviluppatori chì solu bisognu di esse copiati da a documentazione. L'editura di un mudellu hà pigliatu circa una ora, soprattuttu perchè preparava a nostra API per mandà u TVML finitu cù tutti i dati necessarii à l'Apple TV.
U sicondu mudellu hà pigliatu solu circa 10 minuti. Aghju aghjustatu dui JavaScript - a maiò parte di u codice in elli vene direttamente da Apple, allora perchè reinventà a rota. Apple hà preparatu scripts chì curanu a carica è a visualizazione di mudelli TVML, cumpresu l'indicatore di carica di cuntenutu ricumandatu è a visualizazione d'errore pussibule.
In menu di duie ore, aghju pussutu mette inseme una applicazione PLAY.CZ assai nuda, ma funzionante. Pò vede una lista di stazioni di radiu, pò filtrà per generu è pò inizià a radiu. Iè, assai cose ùn sò micca in l'app, ma i principii funzionanu.
[youtube id=”kLKvWC-rj7Q” larghezza=”620″ altezza=”360″]
U vantaghju hè chì l'applicazione hè basicamente nunda più di una versione speciale di u situ web, chì hè alimentatu da JavaScript è pudete ancu aduprà CSS per mudificà l'apparenza.
Apple hà ancu bisognu di più cose per preparà. L'icona di l'applicazione ùn hè micca unu, ma dui - più chjucu è più grande. A novità hè chì l'icona ùn hè micca una maghjina simplice, ma cuntene un effettu parallax è hè cumpostu da 2 à 5 strati (sfondu, oggetti in u mità è in primu pianu). Tutte l'imaghjini attivi in tutta l'applicazione ponu cuntene u listessu effettu.
Ogni strata hè in realtà solu una maghjina nantu à un fondo trasparente. Apple hà preparatu a so propria applicazione per a compilazione di sti imaghjini stratificati è prumetti di liberà un plugin d'esportazione per Adobe Photoshop prestu.
Un altru requisitu hè una maghjina "Top Shelf". Se l'utilizatore mette l'app in una pusizione prominente in a fila superiore (nantu à a cima), l'app deve ancu furnisce u cuntenutu per u desktop sopra a lista di l'app. Ci pò esse solu una stampa simplice o pò esse una zona attiva, per esempiu cù una lista di filmi preferiti o, in u nostru casu, stazioni di radiu.
Parechji sviluppatori sò appena cuminciati à spiegà e pussibilità di u novu tvOS. A bona nutizia hè chì scrive una app di cuntenutu hè assai faciule, è Apple hà andatu una longa strada per i sviluppatori cù TVML. Custruì una applicazione (per esempiu PLAY.CZ o iVyszílő) deve esse faciule è veloce. Ci hè una bona chance chì un gran numaru di applicazioni seranu pronti à u stessu tempu chì u novu Apple TV hè in vendita.
Scrivite una app nativa o portà un ghjocu da iOS à tvOS serà più sfida, ma micca assai. U più grande ostaculu serà cuntrolli diffirenti è un limitu di 200MB per app. Una applicazione nativa pò scaricà solu una parte limitata di e dati da a tenda, è tuttu u restu deve esse scaricatu in più, è ùn ci hè micca garanzia chì u sistema ùn sguasserà micca questi dati. Tuttavia, i sviluppatori certamenti affruntà sta limitazione rapidamente, ancu grazia à a dispunibilità di un inseme di strumenti chjamati "App Thinning", chì sò ancu parti di iOS 9.
Bellu articulu. Grazie. Forse in u tempu, videremu da Apple ancu una suluzione d'utilizatore per a preparazione di l'applicazioni più simplici (soluzioni), cum'è hè pussibule cù FileMaker per iOS, senza chì mi sia un sviluppatore.
In teoria ... u caricatore Swift hè uni pochi di linee chì sò sempre listessi, solu l'URL per u primu schedariu TVML cambia. Se qualchissia vole, pò esse prubabilmente scrive un script chì puderia eseguisce remotamente una custruzzione cù u vostru URL è rinvià un schedariu IPA. O sè vo avete un mac, ùn hè micca prublema per mandà u prugettu, induve ghjustu mette l'URL è principià a custruzione. U vantaghju hè chì, se u TVML hè fora di l'applicazione, in realtà avete solu bisognu di una custruzzione publica è possibbilmente una custruzzione privata (sviluppu), è pudete solu cambià u TVML in u servitore è cusì u funziunamentu di l'applicazione.
"L'app pò esse solu per tvOS, o u codice pò esse aghjuntu à una app iOS esistente per creà una app "one-size-fits-all" - un mudellu simili à l'app iPhone è iPad oghje".
Mi dumandu ciò chì vulete dì? In modu persunale, ùn aghju micca truvatu in ogni locu un modu per fà 1 build chì includerà l'iPhone universale, l'iPad è l'Apple TV .. postu chì sò SDK separati (simili à OSX), avete bisognu di un scopu extra per tvOS è cusì ancu una custruzzione separata. . Mi manca qualcosa ?
in Xcode 7.1 l'applicazioni tvOS ponu esse aghjuntu cum'è un altru scopu à un prughjettu digià esistente - simili à l'applicazioni per l'Apple Watch o forse un widget per u centru di notificazione. Tuttavia, ùn sò micca ancu sapè cumu serà caricatu in a tenda... Assumemu chì Xcode mandarà un pacchettu è l'App Store u dividirà ... Probabilmente simili à ciò chì facenu cù u Watch avà.
noo .. in u mo parè, queste sò 2 cose completamente diverse .. watch hè una estensione .. o almenu era finu à watchOS 2.0 .. hè statu datu inseme cù u mira iOS è ùn hà mancu travagliatu senza un iPhone .. ATV hè una entità separata .. hè ciò chì parlu, sia a custruzione per ATV serà separata (avete bisognu di pagà per 2 $) è in più iOS hà pagatu per 2 $, o serà pussibule cuncede un universale. 2 $ custruite per iOS è ATV. Famiglia per ATV..
cusì u veru lanciamentu mostrarà, ma si cumporta veramente u listessu cum'è u codice Apple Watch, per esempiu. Altrimenti, a documentazione dice chì serà pussibule aghjunghje codice per tvOS à l'applicazione esistente è cusì serà pussibule vende una app (una entità in l'App Store) per iOS è tvOS à u stessu tempu - una compra per u cliente, o cum'è una entità separata - una compra separata per iOS è per tvOS.
Solu per chjarificà, ùn hè micca 200MB per app, ma 200MB almacenati in u locu è u restu scaricatu da a reta quandu hè necessariu.
Grazie, hè ciò chì aghju pensatu, ma probabilmente l'aghju sbagliatu. Tuttu ciò chì sopra à 200 MB (o tuttu ciò chì hè telecaricatu in più) hè almacenatu cum'è cache è se u sistema decide chì ùn hè più spaziu, cumencia à sguassà - chì probabilmente ùn succederà micca finu à chì ci hè abbastanza spaziu liberu è dopu u cuntenutu menu utilizatu. serà sguassatu, cusì in pratica probabilmente ùn serà micca assai prublema.
Chì altru aghju da truvà fora, suppostamente stu limitu ùn applicà à ghjochi, o u ghjocu puderia esse più grande di 200MB ghjustu à a basa. Ma ùn sò ancu esattamente cumu si tratta esattamente di questu. Hè abbastanza pussibule chì Apple hè sempre aghjustendu sta pulitica secondu u feedback di i sviluppatori.
hehe Pokemon TCG - 4 GB, Ordine u caosu in linea - 1,6 GB Hearthstone 1,3 GB Sò veramente curiosu di questu.
ci era infurmazione chì i ghjoculi anu un modu speciale. Aghju aghjustatu i dettagli avà è compiemu l'articulu.
Ùn possu micca fà, è scusate in anticipu s'ellu offende à qualchissia, ma aghju solu una gioia tamanta, sincera è genuina chì vulia sparte cun voi...
U ghjornu dopu à l'annunziu di u novu Apple TV, ùn era micca pigro è hà firmatu per a lotteria Apple (sceltu?) cù a pussibilità di ottene un Kit di Sviluppatore ancu prima ch'ella sia in vendita.
Aieri sera, Apple m'hà scrittu chì m'hà sceltu per u primu batch :)
Dunque, ùn sò micca listessa cum'è l'autore di questu articulu, è sinceramente sò travagliendu in Preschool Brasnicce per Apple TV - dispunibule in u vostru App Store durante uttrovi :)
dunque aghju l'impressione chì tutti quelli chì si sò registrati l'anu prubabilmente acquistatu :) Aghju ancu urdinatu ieri è sò veramente, assai impazienti ... È cunnoscu una altra persona chì aspetta ancu a so consegna...
In ogni casu, finu à avà pare chì ci sarà prubabilmente assai app quandu a vendita principia :)
Probabilmente tutti ùn l'anu micca - ùn mi l'anu micca datu :(
:( Mi dispiace per tè.
Se qualcunu vulete, aghju ottu stickers Apple bianchi ... Puderaghju per mail ...