Pular para o conteúdo principal

Google TV: Unboxing e Hello World

Recentemente recebemos um "presente" do Google Brasil, um dispositivo Google TV, modelo Sony NSZ-GT1, e coube a mim a honra de receber esse gadget e fazer o unboxing e um hello world para começar a explorar mais essa aposta do Google !

Conhecendo o Google TV

Em maio de 2010, durante o Google I/O, a empresa anunciou a criação em conjunto com a Intel, Sony e Logitech a criação de uma plataforma de "Smart TV". Coube ao Google integrar a TV com o Android e também uma versão baseada em Linux do navegador Chrome. Porém, devido a uma série de fatores, como por exemplo a escassez de conteúdo e a ausência de aplicativos, o Google TV teve seu início competitivo um pouco abalado, inclusive alguns analistas na época diziam que o dispositivo era muito "beta".

Pois bem, o Google percebeu que a plataforma não ia muito bem, mas não deixou de apostar na idéia, e durante o Google I/O desse ano eles apresentaram o Google TV 2.0 ! O dispositivo agora recebia um update de firmware para o Android 3.1 (irá receber também o update do ICS) e também passaria a ter acesso ao Android Market, ou seja, agora você pode instalar aplicativos na "sua TV".

A integração com o YouTube foi melhorada, e algumas aplicações específicas foram lançadas, como o Twitter, Pandora e Netflix. Além disso, o Google expandiu a parceria com alguns canais e cada vez mais opções vão aparecendo. Você também pode comprar conteúdo online, diretamente na Amazon de forma bem simples.

Lá fora, esse aparelho da Sony custa US$ 399.

E no Brasil ?

O Google TV ainda não é oficialmente vendido no Brasil, mas você consegue encontrar alguns para vender no Mercado Livre e similares, além é claro, de poder trazer o aparelho quando fizer uma viagem ao exterior. Mas oficialmente, você não vai conseguir acessar algumas coisas que possuem restrição de localização. O Google diz que vai expandir para outros países, inclusive o Brasil, mas não há data oficial ainda.

O pessoal da Revista Info fez uns testes e estão disponíveis online: "Na mão: Google TV põe a web na sala"

Unboxing

Não preciso nem dizer que, como um bom nerd, fiz questão de tirar fotos passo a passo da abertura da caixa do Google TV né? ;-)
O que posso dizer é que se preocuparam em fazer uma embalagem simples, prática e bonita. O device em si, lembra um console de video game, com uma entrada frontal para Blu-ray. Na parte traseira estão todos os conectores, e o detalhe é que para saída de video as opções são apenas HDMI e óptica.








Programando para o Google TV

Como qualquer programador Android que se preze, o meu primeiro passo foi acessar o site Android Developers e cliar no link referente ao Google TV, que me direcionou para o site específico da tecnologia. Nesse site você pode escolher de que forma quer produzir conteúdo, e nosso caso, vamos de "Android Applications" ! =)

Obs.: Nesse ponto, se você não conhece a plataforma Android e nunca fez nem um Hello World, o ideal é que busque algo mais básico em Android primeiro para depois partir para alguma experiência com a TV.

O que temos a seguir é um "Developer Guide" com diversas seções que tem como objetivo guiar o desenvolvedor na criação de uma aplicação. Você pode navegar a vontade e ir descobrindo vários detalhes e dicas para o desenvolvimento das aplicações, mas algumas valem mais atenção.

Funcionalidades específicas para o Google TV
  • Aplicação Live TV: Sinal da sua TV sendo transmitido em uma aplicação.
  • Content provider para a lista de canais: Você consegue ter acesso a lista de canais que estão com o sinal disponível.
  • Google TV add-on: Um pacote para você adicionar ao seu SDK para lhe ajudar no desenvolvimento e teste de aplicações, contém o emulador da plataforma.
E o que não funciona no Google TV

Bom, lembrando que se trata de um dispositivo que vai em uma TV, logo, não espere encontrar algo como o giroscópio por exemplo. Para uma lista completa do que é e do que não é suportado, veja a seção Feature Support in Google TV.

Emulando o Google TV

Aqui vai uma má notícia para muitos programadores, o emulador está disponível apenas para máquinas com Linux e processador Intel, com KVM. Para mais detalhes sobre como emular e limitações, veja na seção Emulator do developer guide.

Obs.: É claro que isso não chega ser algo impeditivo, você pode criar um AVD que tenha as mesmas configurações de resolução da TV e como target o Android 3.1. Não é a mesma coisa, mas já adianta bastante! ;-)

Aplicações específicas e port de aplicativos já existentes

Como disse antes, algumas coisas não são suportadas pelo Google TV e outras são específicas. Mas, como o Android é uma plataforma que se propõe a rodar em qualquer dispositivo que a implemente, você deve tomar alguns cuidados no AndroidManifest.xml se quiser garantir que sua aplicação funcione no Google TV também, ou que ela seja específica para essa plataforma.

Para que sua aplicação esteja disponível APENAS para TV, você deve colocar no AndroidManifest.xml:

<uses-feature android:name="com.google.tv" android:required="true" />

Se você fez uma aplicativo, mas quer que ele rode nos celulares, tablets e também na TV você deve informar que sua aplicação não requer touchscreen (óvbio, né?):

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

Para saber melhor o que colocar e o que não colocar no AndroidManifest.xml, dê uma lida na seção AndroidManifest.

Criando uma aplicação

Mesmo não tendo o add-on específico da plataforma, isso não é um problema. Basta criar um projeto como target o Android 3.1 e você poderá subir esse projeto para o seu Google TV. Depois do projeto criado, coloque uma imagem, escreva um texto, coloque menu, enfim, faça uma pequena aplicação para que não seja só um puro hello world.

Agora é necessário se conectar ao dispositivo para que possamos testar nossa aplicação. Mas, nem pense em conectar seu computador por USB no Google TV, afinal, seria estranho você programar do lado do rack da sala né ? Você irá acessar o dispositivo pela rede wi-fi, então, basta que você e o Google TV estejam na mesma rede.

O primeiro passo então é habilitar o "Remote debugging":
  • Na home screen, clique em "All Apps" para visualizar todas aplicações, e então clique no ícone da aplicação Settings.
  • Nos settings, escolha Applications e depois Development.
  • E então habilite o Remote debugging.
  • Depois clique em Debugger IP address e preencha com o IP da sua máquina
Depois você já pode se conectar ao seu dispositivo, para isso:
  • Primeiro descubra o IP do seu Google TV. Para isso vá em All Apps --> Settings e então escolha Networking e em seguida Status. Na parte IP address você encontra o IP do seu dispositivo.
  • Agora, vá para a linha de comando e acesse o diretório platform-tools do seu SDK, e lá execute o comando: adb connect
  • Para estar se tudo está ok, basta digitar o comando: adb devices (isso deve listar algum device com o IP que você informou).
Agora que o ADB já está conectado no seu dispositivo, basta executar o seu projeto e ele irá aparecer na sua TV! Nesse momento, todas as ferramentas que você já está acostumado a usar na perspectiva DDMS estarão disponíveis para você também! Enjoy !! =)

Abaixo segue a foto que tirei do hello world rodando. E quem quiser baixar o código do exemplo, que é extremamente simples, basta seguir o link: download do GTV Hello World !


Desculpem a foto escura, mas estava sem camêra digital e tirei a foto com meu celular, sem flash.

Mais informações

Por enquanto é isso! Gostou? Quer programar para o Google TV também? Aproveite e se inscreva na Academia do Android, onde temos um módulo só sobre esse incrível dispositivo. E mesmo que você já domine Android, mas quer expandir seus conhecimentos, também pode se matricular apenas no módulo "Desenvolvimento de aplicações para Google TV".

Além disso, vou postando mais coisas por aqui conforme a gente for criando!

Abraços
Neto

Comentários

Daniel disse…
Legal o post Neto. Parece muito interessante mesmo esse dispositivo. Vamos aguardar como será a evolução do Android agora para tv também. Abraço!
Pardal disse…
Tem alguma previsão da chegada ao Brasil?
Yara Senger disse…
Excelente post Neto!
Eu adoro está empolgação com as coisas, com a tecnologia, com a vida vivida dia a dia.

Postagens mais visitadas deste blog

10 reasons why we love JSF

1. One-slide technology: it's so simple that I can explain basic JSF with one slide. 2. Easy to extend: components, listeners, render kit, Events, Controller, etc. 3. Real-world adoption: JBoss, Exadel, Oracle, IBM, ... 4. Architecture model: you can choose between more than 100 different architecture. 5. Open-mind community: using JSF you are going to meet very interesting people. 6. We are using JSF the last 5 years and we found very good market for JSF in Brazil 7. Progress: look to JSf 1.1 to JSF 1.2, JSF 1.2 to JSF 2.0. People are working really hard! 8. Many professionals now available 9. It's a standard. It's JCP. Before complain, report and help! 10. Ed Burns, spec leader, is an old Globalcode community friend! EXTRA: My wife is specialist in JSF. She's my F1 for JSF :) Nice job JSF community! -Vinicius Senger

2º Bate Papo do SP-GTUG - Divulgação

Pessoal, Para aqueles que já estiveram presentes nas atividades do SP-GTUG (encontros ou bate papos na Globalcode), e para os que ainda não puderam estar presentes, teremos um novo bate papo acerca de mais duas tecnologias do Google: AdSense e Python no GAE. Este será o nosso segundo bate papo do SP-GTUG, nos mesmos moldes dos minicursos da Globalcode . Local e data O bate papo acontecerá no dia 27/03/10, das 10:00 às 13:00 na Globalcode. Para fazer sua inscrição e participar acesse a home da Globalcode e vá até a parte de "Minicursos Gratuitos da Semana ". Conteúdo das apresentações Abaixo seguem as descrições passadas pelos palestrantes: Título: "Algoritmos em Python" Resumo: Python é uma linguagem considerada frugal, simples, sem ser simplória! Entenda como construir algoritmos ninjas com essa linguagem, adotada pela Google e pelo MIT. Veremos muito, muito código, desde algoritmos clássicos até tutoriais do

JSF 2 - Composite Components, você não precisa mais ser um ninja

Estamos em uma nova era da computação, os dados não estão mais localizados em um banco dentro de sua empresa, vivemos a explosão de redes sociais, informações são geradas a todo instante, e se torna essencial que sua aplicação conheça os serviços disponíveis na web e consumam suas APIs geralmente disponíveis por serviços REST. Legal, mas como ficam meus aplicativos Java EE neste novo cenário? Para quem vem acompanhando a evolução da plataforma, é notório que todo esforço vem sendo utilizado para aumentar a produtividade e a integração com novos serviços. Basicamente duas especificações surgem com muita força para atender este cenário, a JSR - 314 (JSF-2) e JSR - 311 (JAX-RS), neste post exploraremos a JSR-314 (JSF2) e sua nova forma de criar Composite Components. Uma das grandes queixas dos desenvolvedores JSF era a complexidade em criar composite components, era necessário um vasto conhecimento sobre o ciclo de vida de uma aplicação JSF. Agora, você não precisa ser mais um “ninja” em

Gosta de informática e sonha ser programador Java um dia ?

A Globalcode está procurando jovens que queiram ser programadores no futuro, para fazer parte de sua equipe de vendas e operacional na unidade Paraíso em São Paulo somente. O grande diferencial é o planejamento para carreira de programador. O planejamento de cursos do portifólio da Globalcode: Academia do Programador, Academia Java, Academia Web, Robótica, Eletrônica, etc, será realizado periodicamente de acordo com o desempenho e interesse individual. Atenção : Este não é um estágio para trabalhar com Java, são duas vagas CLT administrativas para pessoas que queiram ser programadores no futuro. Perfil : Conhecimentos de informática básica, saber lidar com pessoas e trabalhar em equipe. Deve ter concluído o ensino médio, ter boa escrita, ser organizado, responsável, comprometido e dinâmico. Interesse por computação, programação, internet, robótica, eletrônica,... Temos duas vagas para jovem-aprendiz abertas: 1) Setor operacional No dia a dia Serviços externos Controle de estoqu

Palestras do TDC Business Disponíveis Online

🚨 Atenção, TDC Lovers! O TDC Business em São Paulo acabou, mas os conteúdos mal começaram!  Não pô de aproveitar a STADIUM ao vivo? Não tem problema, porque trouxemos ela até você. Todas as palestras da STADIUM, palco principal do TDC, já estão no ar e liberadas para qualquer pessoa assistir. Essa Trilha incrível conta com palestras de Trilhas Premium e temas variados de forma GRATUITA para você poder maratonar de casa!  Aproveite para prestigiar seu evento de TI favorito com pipoca direto do seu sofá. 🎥 🍿 Gravação da STADIUM, 22 a 24 de Agosto de 2022, disponível aqui: https://www.globalcode.com.br/videos/tdc-2022-business/  Todas as demais trilhas do TDC Business serão publicadas gradualmente nas próximas semanas, fique atento aos nossos e-mails, você será notificado por lá quando sua Trilha estiver disponível. Acompanhe nossas redes sociais para não perder nada e ficar por dentro de todas as novidades do TDC!

TDC INNOVATION lança University Pass

Modalidade de ingresso tem como objetivo ajudar na capacitação dos universitários Uma pesquisa realizada em 2020 pela Associação Brasileira das Empresas de Tecnologia da Informação e Comunicação (Brasscom) diz que até o ano de 2024 o Brasil precisará de cerca de 420 mil profissionais na área de Tecnologia da Informação. Porém, por ano, a mesma pesquisa diz que o país forma apenas 46 mil profissionais capacitados no nicho. Pensando nisso, para ajudar na formação e capacitação desses jovens profissionais, o TDC INNOVATION, segunda edição do ano do The Developer's Conference, lança o University Pass, modalidade de ingresso que possibilita aceso digital gratuito a todas as palestras do evento, ou com 50% de desconto para quem preferir ir pessoalmente. Com o tema central “Desafios para a criação do futuro Digital”, o TDC INNOVATION ocorrerá entre 1 e 3 de junho, de forma híbrida: presencialmente no Centro de Convenções CentroSul, em Florianópolis, e com transmissão simultaneamente pela