Desenvolvendo aplicacoes para TV Digital Interativa

127
Desenvolvendo Aplicações para TV Digital Interativa Desenvolvendo Aplicações para TV Digital Interativa Diemesleno Souza Carvalho Campo Grande - MS, 9 de Abril de 2011.

description

Mini curso oferecido no FLISOL Campo Grande 2011.

Transcript of Desenvolvendo aplicacoes para TV Digital Interativa

Page 1: Desenvolvendo aplicacoes para TV Digital Interativa

Desenvolvendo Aplicações para TV Digital InterativaDesenvolvendo Aplicações para TV Digital Interativa

Diemesleno Souza Carvalho Campo Grande - MS, 9 de Abril de 2011.

Page 2: Desenvolvendo aplicacoes para TV Digital Interativa

Sobre o instrutorSobre o instrutor

●Tecnólogo em Sistemas para Internet.

●Pós-graduando MBA em Gestão de Projetos.

●Trabalho com T.I. desde 1998.

●Palestrante em diversos eventos regionais.

●Ex-estagiário no TRE-MS e Dataprev-MS.

2 anos na Sefaz/MS como Analista/Programador.●2 anos na Sefaz/MS como Analista/Programador.

●Analista de Sistemas Pleno na InnfoMaster.

Page 3: Desenvolvendo aplicacoes para TV Digital Interativa

Tópicos AbordadosTópicos Abordados

●Nivelamento sobre DTVi.

●Entender as tecnologias envolvidas.

●Conhecer os desafios do mercado.

●Montar o ambiente de desenvolvimento e teste.

●Criar e testar algumas aplicações de exemplo.

Page 4: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

Page 5: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

Page 6: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

Page 7: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

Page 8: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

Page 9: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

Page 10: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

–Baixa qualidade de imagem.

Page 11: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

–Baixa qualidade de imagem.

Chata,

Page 12: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

–Baixa qualidade de imagem.

Chata, Sem novidades,

Page 13: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

–Baixa qualidade de imagem.

Chata, Sem novidades, Repetitiva,

Page 14: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Analógica

–Telespectador passivo.

–Mono-canal.

–Baixa qualidade de som.

–Baixa qualidade de imagem.

Chata, Sem novidades, Repetitiva, Muitas vezes apelativa.

Page 15: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

Page 16: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

Page 17: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

Page 18: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

Page 19: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

–Imagem de alta definição.

Page 20: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

–Imagem de alta definição.

Diversidade de dispositivos,

Page 21: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

–Imagem de alta definição.

Diversidade de dispositivos, Visualizar informações sobre os canais e programas,

Page 22: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

–Imagem de alta definição.

Diversidade de dispositivos, Visualizar informações sobre os canais e programas, Equipamento caro,

Page 23: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital

–Telespectador passivo.

–Múltiplos canais.

–Qualidade de som de CD.

–Imagem de alta definição.

Diversidade de dispositivos, Visualizar informações sobre os canais e programas, Equipamento caro, Poucas emissoras.

Page 24: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

Page 25: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Tudo que a TV Digital tem...

Page 26: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Telespectador ativo.

Page 27: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Telespectador ativo.

Page 28: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Novas formas de se utilizar a TV. (T-Commerce)

Page 29: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Novas formas de se utilizar a TV. (T-Learning)

Page 30: Desenvolvendo aplicacoes para TV Digital Interativa

Nivelamento sobre DTViNivelamento sobre DTVi

●TV Digital Interativa

–Novas formas de se utilizar a TV. (T-GOV)

Page 31: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Page 32: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Page 33: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.E.U.A.E.U.A.

Page 34: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.E.U.A.E.U.A.

- ACAP- X

- ACAP-J

Page 35: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Page 36: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Europa

Page 37: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Europa

- DVB-HTML

- MHP

Page 38: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Page 39: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Japão

Page 40: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Japão

- BML

Page 41: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Page 42: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Brasil

Page 43: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Padrões de DTVi.

Brasil

- Ginga-NCL

- Ginga-J

Page 44: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Interatividade.

Page 45: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Interatividade.

“Trata da possibilidade do telespectador receber uma mensagem e tratá-la da forma que desejar.”

Page 46: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

Page 47: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

–Votação eletrônica.

Page 48: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

–Votação eletrônica.

–Serviços bancários.

Page 49: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

–Votação eletrônica.

–Serviços bancários.

–Serviços de saúde.

Page 50: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

–Votação eletrônica.

–Serviços bancários.

–Serviços de saúde.

–Serviços de educação a distância.

Page 51: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Possibilidades.

–Votação eletrônica.

–Serviços bancários.

–Serviços de saúde.

–Serviços de educação a distância.

–Compras.

Page 52: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Graus de Interatividade.

Page 53: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Graus de Interatividade.

–Nível 1

“A interatividade é apenas com o aparelho de TV, limitando-se a fazer escolhas. O usuário não interfere na programação.”

Page 54: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Graus de Interatividade.

–Nível 2

“O usuário interage com a programação, que pode ser alterada com o simples uso do controle remoto. Neste nível seria possível escolher, por exemplo, o final de uma novela.”novela.”

Page 55: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●O Middleware.

Page 56: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●O Middleware.

“Camada de software capaz de prover o suporte necessário para o desenvolvimento de aplicações para TV Digital e também tornar uma aplicação de TV capaz de ser executada em qualquer plataforma, independente de ser executada em qualquer plataforma, independente de Hardware e Sistema Operacional.”

Page 57: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

Page 58: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

–Sincronismo de mídias.

Page 59: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

–Sincronismo de mídias.

–Definição de relacionamentos de sincronismo espacial e temporal separada da definição do conteúdo dos objetos de mídia relacionais.

Page 60: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

–Sincronismo de mídias.

–Definição de relacionamentos de sincronismo espacial e temporal separada da definição do conteúdo dos objetos de mídia relacionais.

–Adaptação de conteúdo e da forma que o conteúdo é exibido.exibido.

Page 61: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

–Sincronismo de mídias.

–Definição de relacionamentos de sincronismo espacial e temporal separada da definição do conteúdo dos objetos de mídia relacionais.

–Adaptação de conteúdo e da forma que o conteúdo é exibido.exibido.

–Múltiplos dispositivos de exibição.

Page 62: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

●Requisitos para um Middleware completo.

–Sincronismo de mídias.

–Definição de relacionamentos de sincronismo espacial e temporal separada da definição do conteúdo dos objetos de mídia relacionais.

–Adaptação de conteúdo e da forma que o conteúdo é exibido.exibido.

–Múltiplos dispositivos de exibição.

–Permitir edição ao vivo.

Page 63: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

Dentre os Middlewares listados somente 1 é completo.

Page 64: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

Dentre os Middlewares listados somente 1 é completo.

Page 65: Desenvolvendo aplicacoes para TV Digital Interativa

Entendendo as tecnologias envolvidasEntendendo as tecnologias envolvidas

Arquitetura Ginga.

Page 66: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●Cenário atual da Interatividade no Brasil.

Page 67: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●Cenário atual da Interatividade no Brasil.

–Conservadora.

Page 68: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●Cenário atual da Interatividade no Brasil.

–Conservadora.

–Tecnologia recente.

Page 69: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●Cenário atual da Interatividade no Brasil.

–Conservadora.

–Tecnologia recente.

–Sem um modelo de negócios definido.

Page 70: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●Cenário atual da Interatividade no Brasil.

–Conservadora.

–Tecnologia recente.

–Sem um modelo de negócios definido.

–Sem uma maturidade ideal.

Page 71: Desenvolvendo aplicacoes para TV Digital Interativa

Conhecendo os desafios do mercadoConhecendo os desafios do mercado

●O mercado da TV Digital Interativa.

Page 72: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

O que precisamos para desenvolver aplicações para TV Digital Interativa?

Page 73: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

1. Ginga-NCL Player.

Page 74: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

1. Ginga-NCL Player.

2. Eclipse + jdk + JavaTV + XletView.

Page 75: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

1. Ginga-NCL Player.

2. Eclipse + jdk + JavaTV + XletView.

3. Vmware Player.

Page 76: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

1. Ginga-NCL Player.

2. Eclipse + jdk + JavaTV + XletView.

3. Vmware Player.

4. Imagem do S.O. do Set Top Box Ginga.

Page 77: Desenvolvendo aplicacoes para TV Digital Interativa

Montando o ambiente de desenvolvimento e testeMontando o ambiente de desenvolvimento e teste

1. Ginga-NCL Player.

2. Eclipse + jdk + JavaTV + XletView.

3. Vmware Player.

4. Imagem do S.O. do Set Top Box Ginga.

5. WinSCP + Putty5. WinSCP + Putty

Page 78: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

● Aplicação NCL Pura.

Page 79: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

1 - Abra o eclipse.

Page 80: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

2 - Crie um novo projeto do tipo ‘General/Project’ e dê o nome de NCL-Pura.nome de NCL-Pura.

Page 81: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

3 - Clique com o botão direito no projeto e crie um novo diretório chamado ‘media’.diretório chamado ‘media’.

Page 82: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

4 - Clique com o botão direito no diretório ‘media’ e selecione a opção ‘import->File System’ e selecione o selecione a opção ‘import->File System’ e selecione o arquivo ‘video.mp4’.

Page 83: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

5 - Clique com o botão direito no projeto e crie um novo arquivo do tipo ‘NCL Document’ e digite ‘main’ para o arquivo do tipo ‘NCL Document’ e digite ‘main’ para o id do arquivo.

Page 84: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

6 - Dentro do cabeçalho ‘<head>’, defina uma regionBase.regionBase.

<regionBase>

<region id=“rgFundo” width=“100%” height=“100%”/>

</regionBase>

Page 85: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

7 - Logo abaico da ‘<regionBase>’, defina um descriptorBase.descriptorBase.

<descriptorBase>

<descriptor id=“descVideo” region=“rgFundo”/>

</descriptorBase>

Page 86: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

8 - Dentro do corpo do programa ‘<body>’, indique a mídia que aparecerá na tela.mídia que aparecerá na tela.

<media id=“video” src=“media/video.mp4” descriptor=“descVideo”/>

Page 87: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

9 - Logo abaixo de ‘<media>’, crie um ‘<port>’ indicando a mídia iniciará no programa.indicando a mídia iniciará no programa.

<port id=“pEntrada” component=“video” />

Page 88: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

Abra o Ginga-NCL Player e teste o programa.

Page 89: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

● Aplicação Ginga-J

Page 90: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

1 - Abra o Eclipse e crie um novo projeto Java com o nome de ‘Ginga-J’.de ‘Ginga-J’.

Page 91: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

2 - Clique com o botão direito no projeto e selecione ‘Propriedades’.‘Propriedades’.

Page 92: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

3 - Clique em ‘Java Build Path’ e na aba ‘library’ clique no botão ‘Add External Jars’.botão ‘Add External Jars’.

Page 93: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

4 - Adicione o jar do Xletview.

Page 94: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

5 - Adicione o jar do JavaTV.

Page 95: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

6 - Clique no botão ‘Add External Class Folder’ e adicione o diretório ‘lib’ do JavaTV.diretório ‘lib’ do JavaTV.

Page 96: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

7 - Clique no botão ‘Ok’.

Page 97: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

8 - Clique com o botão direito no projeto e crie um novo pacote com o nome ‘br.com.flisolcg’.pacote com o nome ‘br.com.flisolcg’.

Page 98: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

9 - No pacote criado clique com o botão direito e crie uma nova classe com o nome ‘FlisolCGXlet’.nova classe com o nome ‘FlisolCGXlet’.

Page 99: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

10 - Implemente a classe Xlet na nossa classe criada.

public class FlisolCGXlet implements Xlet {

}

Page 100: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

11 - Clique no ‘problema’ para tratar a dependência.

import javax.tv.xlet

Page 101: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

12 - Clique no ‘problema’ para implementar os métodos do Xlet.Xlet.

destroyXlet()

initXlet()

pauseXlet()

startXlet()

Page 102: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

13 - Dentro da classe, declarar os objetos que serão utilizados.utilizados.

private XletContext contexto;

private HStaticText labelAcima;

private HStaticText labelMeio;

private HStaticText labelAbaixo;

private HScene scene;

Page 103: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

14 - Clique no ‘problema’ para tratar as dependências.

import org.havi.ui.HScene;

import org.havi.ui.HStaticText;

Page 104: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

15 - Crie o método construtor da classe.

public FlisolCGXlet() {

//vazio

}

Page 105: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

16 - Configure o método destroyXlet.

public void destroyXlet(boolean arg0) throws XletStateChangeException {

this.contexto.notifyDestroyed();

}

Page 106: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

17 - Adicione o objeto ‘contexto’ no método initXlet.

public void initXlet(XletContext contexto) throws XletStateChangeException {

}

Page 107: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

18 - Ainda dentro do método initXlet adicione:

public void initXlet(XletContext contexto) throws XletStateChangeException {

this.contexto = contexto;

}

Page 108: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

19 - Ainda dentro do método initXlet adicione:

public void initXlet(XletContext contexto) throws XletStateChangeException {

this.contexto = contexto;

this.scene = HSceneFactory.getInstance()

.getFullScreenScene(HScreen.getDefaultHScreen()

.getDefaultHGraphicsDevice());.getDefaultHGraphicsDevice());

}

Page 109: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

20 - Clique no ‘problema’ para tratar as dependências.

import org.havi.ui.HScreen;

import org.havi.ui.HSceneFactory;

Page 110: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

21 - Ainda dentro do método ‘initXlet’ adicione:

this.labelAcima = new HStaticText(“FlisolCG 2011");

this.labelAcima.setFont(new Font("Arial", Font.BOLD, 90));

this.labelAcima.setBounds(10, 10, 700, 200);

this.labelAcima.setForeground(Color.white);

this.labelAcima.setBackground(new Color(0,100,0));

Page 111: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

22 - Clique no ‘problema’ para tratar as dependências.

import java.awt.Color;

import java.awt.Font;

Page 112: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

23 - Ainda dentro do método ‘initXlet’ adicione:

this.labelMeio = new HStaticText("TV Digital se faz com Ginga!");

this.labelMeio.setFont(new Font("Arial", Font.BOLD, 40));

this.labelMeio.setBounds(10, 200, 700, 200);

this.labelMeio.setForeground(new Color(0,0,139));

this.labelMeio.setBackground(Color.white);

Page 113: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

24 - Ainda dentro do método ‘initXlet’ adicione:

this.labelAbaixo = new HStaticText("www.gingams.com.br");

this.labelAbaixo.setFont(new Font("Arial", Font.BOLD, 60));

this.labelAbaixo.setBounds(10, 370, 700, 200);

this.labelAbaixo.setForeground(Color.yellow);

this.labelAbaixo.setBackground(new Color(50,153,204));this.labelAbaixo.setBackground(new Color(50,153,204));

Page 114: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

25 - Ainda dentro do método ‘initXlet’ adicione:

this.scene.add(this.labelAcima);

this.scene.add(this.labelMeio);

this.scene.add(this.labelAbaixo);

Page 115: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

26 - No método ‘startXlet’ adicione:

public startXlet() throws XletStateChangeException {

this.scene.setVisible(true);

}

Page 116: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

27 - Clique no menu ‘Project->Clean’ para compilar nossa aplicação.aplicação.

Page 117: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

28 - Abra o prompt de comando e inicie o XletView.

java -jar xletview.jar

Page 118: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

29 - Clique no menu ‘Applications->Manage Applications’.

Page 119: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

30 - Clique em ‘Default Group’ e no menu lateral clique em ‘New Application’.‘New Application’.

Page 120: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

31 - Clique em ‘new app 01’ e no formulário especifique os seguintes dados.seguintes dados.

Name: FlisolCG

Path: Pasta ‘bin’ do nosso projeto

Xlet: br.com.flisolcg.FlisolCGXlet

Page 121: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

32 - Clique em ‘Save & Close’.

Page 122: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

33 - Volte no menu ‘Applications’ e clique na aplicação ‘FlisolCG’ criada.‘FlisolCG’ criada.

Page 123: Desenvolvendo aplicacoes para TV Digital Interativa

Criando e testando algumas aplicações de exemploCriando e testando algumas aplicações de exemplo

34 - Se estiver tudo ok a aplicação comecará a rodar, se algo estiver errado verifique o console da aplicação.algo estiver errado verifique o console da aplicação.

Page 124: Desenvolvendo aplicacoes para TV Digital Interativa

BônusBônus

Testando algumas aplicações da comunidade.

Page 125: Desenvolvendo aplicacoes para TV Digital Interativa

ConclusãoConclusão

● Mercado altamente promissor.

● Diversos nichos a serem explorados.

● Hora de se capacitar.

● Levar a ideia para as universidades.

● Promover eventos.

● Se divertir.Se divertir.

Page 126: Desenvolvendo aplicacoes para TV Digital Interativa

DúvidasDúvidas

Page 127: Desenvolvendo aplicacoes para TV Digital Interativa

ObrigadoObrigado

● Contato:

– www.diemesleno.com.br

[email protected]

– @diemesleno