Anúncio fechado

Apple na semana passada ele apresentou, entre outras coisas um novo Apple TV com o sistema operacional tvOS. A maior alegria para os desenvolvedores foi certamente o fato de poderem instalar aplicativos a partir App Store.

Os desenvolvedores têm duas opções. Eles podem escrever um aplicativo nativo que tenha acesso total ao hardware Apple TV. O SDK (conjunto de bibliotecas para desenvolvedores) disponível é muito semelhante ao que os desenvolvedores já conhecem do iPhone, iPad, e até as linguagens de programação são as mesmas - Objective-C e mais novas Swift.

Mas para aplicações mais simples Apple ofereceu aos desenvolvedores uma segunda opção na forma de TVML – Television Linguagem de marcação. Se você acha que o nome TVML é suspeitosamente parecido com HTML, você está certo. Na verdade, é uma linguagem de marcação baseada em XML e muito semelhante ao HTML, só que muito mais simples e com uma sintaxe mais rigorosa. Mas é absolutamente ideal para aplicativos como o Netflix. E os usuários também se beneficiarão disso, porque, graças ao rigor do TVML, os aplicativos multimídia terão aparência e funcionamento muito semelhantes.

Caminho para o primeiro aplicativo

Então a primeira coisa que tive que fazer foi baixar a nova versão beta do ambiente de desenvolvimento Xcode (a versão 7.1 está disponível aqui). Isso me deu acesso a tvOS SDK e poderia assim estabelecer um novo projeto voltado precisamente para Apple TV quarta geração. A aplicação só pode ser para tvOS ou é possível adicionar este código a um aplicativo existente para iOS e assim criar uma aplicação “universal” – o modelo é semelhante às aplicações atuais para iPhone e iPads.

Problema um: o Xcode só oferece a opção de criar um aplicativo nativo. No entanto, rapidamente encontrei uma seção na documentação que ajudará os desenvolvedores a alterar essa estrutura e prepará-la para o TVML. Basicamente são algumas linhas de código em Swiftem que somente Apple TV cria um objeto de tela cheia e carrega a parte principal do aplicativo, que já está escrita em JavaScript.

Problema dois: os aplicativos TVML são muito semelhantes a um site, e é por isso que todo o código é carregado da Internet. O aplicativo em si é na verdade apenas um "bootloader", ele contém apenas minicódigo e os elementos gráficos mais básicos (ícone do aplicativo, etc.). Finalmente, inseri com sucesso a parte principal do código JavaScript diretamente no aplicativo e, assim, ganhei a capacidade de pelo menos exibir uma mensagem de erro personalizada quando não estiver Apple TV conectado à internet.

Terceiro pequeno problema: iOS 9 e com ele também tvOS exige estritamente que toda comunicação com a internet seja criptografada via HTTPS. Este é um recurso introduzido em iOS 9 para todas as aplicações e o motivo é a pressão sobre a privacidade do usuário e a segurança dos dados transmitidos. Portanto, será necessário implantar um certificado SSL no servidor web. Você pode obtê-lo por apenas $ 5 (120 CZK) por ano ou pode usar um serviço como CloudFlare, que cuida do HTTPS, automaticamente e sem investimento. A segunda opção é desabilitar essa restrição para o aplicativo, o que atualmente é possível, mas eu definitivamente não recomendaria.

Depois de algumas horas lendo a documentação, onde ainda existem pequenos erros ocasionais, desenvolvi uma aplicação muito básica, mas funcional. Ele exibia o popular texto “Hello World” e dois botões. Passei cerca de duas horas tentando ativar o botão e realmente fazer alguma coisa. Mas considerando as primeiras horas da manhã, preferi dormir… e isso foi bom.

Outro dia tive a brilhante ideia de baixar um aplicativo TVML de exemplo pronto diretamente do Applu. Encontrei o que estava procurando muito rapidamente no código, e o botão estava ativo e funcionando. Entre outras coisas, também descobri as duas primeiras partes de um tutorial sobre como tvOS. Ambas as fontes foram muito úteis, então comecei um novo projeto e comecei a trabalhar na minha primeira aplicação real.

Primeira aplicação real

Comecei completamente do zero, a primeira página do TVML. A vantagem é que Apple preparou 18 modelos TVML prontos para desenvolvedores que só precisam ser copiados da documentação. A edição de um modelo demorou cerca de uma hora, principalmente porque eu estava preparando nossa API para que pudesse Apple TV envie o TVML finalizado incluindo todos os dados necessários.

O segundo modelo levou apenas cerca de 10 minutos. Adicionei dois JavaScripts - a maior parte do código neles vem diretamente de Applu, então por que reinventar a roda? Apple scripts preparados que cuidam do carregamento e exibição de modelos TVML, incluindo o indicador de carregamento de conteúdo recomendado e possível exibição de erros.

Em menos de duas horas, consegui montar um aplicativo PLAY.CZ muito simples, mas funcional. Ele pode exibir uma lista de estações de rádio, filtrá-la por gênero e iniciar o rádio. Sim, muitas coisas não estão no aplicativo, mas o básico funciona.

[youtube id=“kLKvWC-rj7Q“ largura=“620″ altura=“360″]

A vantagem é que o aplicativo nada mais é do que uma versão especial do site, que é alimentada por JavaScript e você também pode usar CSS para modificar a aparência.

Apple ainda requer mais algumas coisas para preparar. O ícone do aplicativo não é um, mas dois - menor e maior. A novidade é que o ícone não é uma simples imagem, mas contém efeito de paralaxe e é composto de 2 a 5 camadas (fundo, objetos do meio e primeiro plano). Todas as imagens ativas no aplicativo podem conter o mesmo efeito.

Cada camada é na verdade apenas uma imagem em um fundo transparente. Apple preparou seu próprio aplicativo para compilar essas imagens em camadas e promete lançar em breve um plugin de exportação para Adobe Photoshop.

Outro requisito é uma imagem de “prateleira superior”. Se o usuário colocar o aplicativo em uma posição de destaque na linha superior (na prateleira superior), o aplicativo também deverá fornecer conteúdo para a área de trabalho acima da lista de aplicativos. Pode ser apenas uma simples imagem ou pode ser uma área ativa, por exemplo com uma lista de filmes favoritos ou, no nosso caso, estações de rádio.

Muitos desenvolvedores estão apenas começando a explorar as possibilidades do novo tvOS. A boa notícia é que escrever um aplicativo de conteúdo é muito fácil e Apple foi muito contra os desenvolvedores com TVML. Construir uma aplicação (por exemplo PLAY.CZ ou iVyszílő) deve ser fácil e rápido. Há uma boa chance de que, ao mesmo tempo que as novas vendas comecem Apple TV um grande número de aplicações também serão preparadas.

Escreva um aplicativo nativo ou transfira um jogo de iOS na tvOS Será mais difícil, mas não tanto. O maior obstáculo serão os controles diferentes e uma limitação de 200 MB por aplicativo. Um aplicativo nativo só pode baixar uma parte limitada de dados da loja e deve baixar todo o resto adicionalmente, e não tem garantia de que o sistema não excluirá esses dados. No entanto, os desenvolvedores certamente conseguirão superar rapidamente essa limitação, graças à disponibilidade de um kit de ferramentas chamado "App "Desbaste", que também fazem parte do iOS 9.

Tópicos: , ,
.