Atenção: esse artigo tem um vídeo complementar. Clique e assista!
O artigo mostra uma parcela pequena da API de mídia do Android utilizando dois exemplos. O primeiro é um aplicativo de streaming de mídia, que pode ser facilmente transformado em uma aplicação completa para rádios. O segundo exemplo mostra um álbum de fotos capturadas e persistidas pela própria aplicação. Este artigo pode ser utilizado por programadores iniciantes na tecnologia Android, que visam tornar mais atrativo suas aplicações a partir de recursos multimídias.
Em que situação o tema é útil:
A grande maioria dos aplicativos, sejam eles Android ou outra plataforma, terá em algum ponto uma interação com o usuário através de mídias, sejam elas áudio, vídeo ou apenas imagens. Sendo assim, o conhecimento aqui reproduzido pode ser produzido em um número muito grande de casos.
Resumo DevMan:
Este artigo cria dois aplicativos, um para acessar o streaming de áudio de uma rádio e, o segundo, para capturar e armazenar um conjunto de fotos. Iremos trabalhar principalmente com a classe MediaPlayer, que permite tocar arquivos de mídias internos e externos e, criar um player de streaming de música. Além disso, também veremos como trabalhar com um importante conceito do Android, um Service.
Autores: Ricardo Ogliari e Robison Cris Brito
O uso de mídias nos aplicativos é extremamente comum, desde sinais de alertas em aplicativos convencionais até sua vital importância em jogos. Podemos encontrar desde simples toques polifônicos até mesmo sons em três dimensões, com diversos efeitos sonoros, mudando consideravelmente a percepção do usuário em relação ao aplicativo que ele está usando.
O uso da mídia também está sendo utilizado na entrada de dados. Além dos teclados convencionais, as telas touchscreen, já encontramos sites e aplicativos que requisitam que o usuário fale a informação que deseja inserir no software.
Para telefones celulares e smartphones a importância das mídias se torna ainda maior devido à atenção que o usuário pode dar ao aparelho. Por exemplo: o motorista está dirigindo pela auto-estrada quando recebe uma mensagem de SMS. Caso ele precise olhar para o visor do aparelho, estará deixando de prestar atenção onde mais importa, na estrada. Se a mensagem fosse lida de forma automática e reproduzida no sistema de som do próprio automóvel, o risco de um acidente diminuiria consideravelmente.
Outro ponto muito importante é na ajuda a deficientes visuais. Apesar da consciência em relação à usabilidade e acessibilidade ter aumentado nos últimos anos, ainda é pouco provável encontrarmos um aplicativo para celular ou smartphone que mostre duas informações na forma textual e oral.
Temos alguns poucos exemplos que podem ser citados aqui.
• LookTel: assistência a cegos e deficientes visuais. Aparelhos celulares são usados para reconhecer e identificar de maneira audível objetos e locais, de forma quase instantânea;
• SeeScan: possui o mesmo objetivo do anterior.
Mas, felizmente para nós programadores, todas as plataformas mobile de hoje apresentam APIs que nos permitem inserir e capturar áudio e vídeo em nossos aplicativos. Até mesmo algumas tecnologias um pouco mais antigas já permitiam isso, como é o caso do Java ME. Algumas delas mais atuais fornecem suporte inclusive a Text to Speech e Speech to Text. O Android não foge a regra.
A plataforma do Google fornece um conjunto de classes e métodos completos para trabalho com mídia.
Neste artigo vamos falar do suporte a áudio e vídeo dentro da plataforma do Google, além disso, também discutiremos como trabalhar com Text to Speech. Para facilitar o aprendizado, o texto acompanhará o desenvolvimento de dois aplicativos como provas de conceito.
Conhecendo o Android
A plataforma Android, criada por um consórcio de empresas lideradas pelo Google, fornece um sistema operacional, um ambiente de desenvolvimento completo para programadores e uma loja virtual com milhares de opções. Seu núcleo é baseado em Linux e a grande maioria das bibliotecas que compõe o Android é de código aberto.
O Android pode ser dividido em partes, como mostrado na Figura 1. No seu núcleo mais básico temos o kernel Linux. Além disso, os drivers que gerenciam todos os processos e fazem a ligação da parte de software com as partes de hardware que compõe o device. Logo acima teremos as bibliotecas (libraries), que permitem aos desenvolvedores acessarem um banco de dados relacional SQLIte, por exemplo. Ou ainda, criar interfaces gráficas complexas com OpenGL e SurfaceManager. O Android Runtime contém a máquina virtual Java, chamada no ambiente criado pelo Google de Dalvik. A camada de Application Framework é utilizada pelos aplicativos nativos do aparelho, como por terceiros que desejem criar software para a plataforma. Um ponto interessante do Android está no fato das aplicações terem o mesmo poder, a mesma importância dentro da arquitetura. Isso difere bastante do Java ME, onde, os nossos aplicativos eram tratados quase que como vírus pelo Symbian.
Figura 1. Arquitetura Android.
No final de 2008, o primeiro smartphone com Android foi lançado no mercado. O t-Mobile G1 chegou com a versão 16 (Donut) do sistema operacional. De lá para cá, não só o hardware dos aparelhos mudou significativamente, mas também as versões do Android. Veja na Tabela 1 as plataformas disponíveis até o momento da escrita deste artigo.
Platform Version |
API Level |
VERSION_CODE |
Notes |
Android 4.0 |
14 |
ICE_CREAM_SANDWICH |
Platform Highlights |
Android 3.2 |
13 |
HONEYCOMB_MR2 |
|
Android 3.1.x |
12 |
HONEYCOMB_MR1 |
Platform Highlights |
Android 3.0.x |
11 |
HONEYCOMB |
Platform Highlights |
Android 2.3.4 Android 2.3.3 |
10 |
GINGERBREAD_MR1 |
Platform Highlights |
Android 2.3.2 Android 2.3.1 Android 2.3 |
9 |
GINGERBREAD |
|
Android 2.2.x |
8 |
FROYO |
Platform Highlights |
Android 2.1.x |
7 |
ECLAIR_MR1 |
... |
Confira outros conteúdos:
Programador Mobile
Desenvolvimento de aplicativos para...
Conceitos básicos para programar para...
Black November
Desconto exclusivo para as primeiras 200 matrículas!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 54,90
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 54,90 /mês
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.