Programação para a Plataforma Android Aula 7. Mul$mídia



Documentos relacionados
Armazenamento Persistente de Dados

Programação para a Plataforma Android Aula 11. Banco de Dados

Provedores de Conteúdo

Programação para Dispositivos Móveis

Comunicação entre A0vidades

Programa de Dispositivos Móveis

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler

Android: Ciclo de vida da Activity

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Programação para Android. Aula 06: Activity, menus e action bar

Módulo 4 - Interface Gráfica Gerenciadores de Layout. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android. Realização de Dinâmica Hands- On para Construção de uma App Android

Prof. Jhonatan Fernando

Introdução a Programação de Jogos

insfcanceof new public switch transient while byte continue extends for int null

Android Layout Manager. Ivan Nicoli

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho

Programação para a Plataforma Android Aula 16. Fragmentos

Desenvolvimento com Android Studio. Aula 02 Widgets, Manipulação de Dados e Programação de Eventos

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.

Android Banco de Dados. Ivan Nicoli

Som, Vídeo, e Deep Zoom. José Antônio da Cunha IFRN

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação em Java para a Plataforma Android AULA 1. Primeiros Passos

Programação de Dispositivos Móveis

Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Gerenciamento de Arquivos e Pastas. Professor: Jeferson Machado Cordini jmcordini@hotmail.com

Módulo 2 - Novas Activities Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Para criar uma animação precisamos de uma imagem e que ela contenha alguns frames. O número de frames é uma escolha sua.

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

17:47:08. Introdução à Informática com Software Livre

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO

Programação para Android. Aula 05: Estilos e temas; galeria de imagens

Programação para Dispositivos Móveis

Android Core. Felipe Silveira felipesilveira.com.br. Aula 6

NÚCLEO DE TECNOLOGIA E EDUCAÇÃO CURSO: WINDOWS MOVIE MAKER TUTORIAL

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

AlarmManager. Programação em Dispositivos Móveis (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB

Geração Automática de Código Android Eficiente a partir de Modelos UML

Desenvolvimento para Android Prá3ca 3. Prof. Markus Endler

Coleções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS

Comunicação via Sockets

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS. ADS 6º Período

Desenvolvimento Android.

POO Programação Orientada a Objetos. Classes em Java

Display de Cristal Líquido

Programação para Dispositivos Móveis. Activities

2 Orientação a objetos na prática

Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Técnicas de Programação II

Log, Ciclo de Vida e Diálogos. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Noções sobre sistemas operacionais, funcionamento, recursos básicos Windows

Programação Orientada a Objetos em java. Polimorfismo

Capítulo 07: Câmera e Arquivos

Tutorial Android Speech

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Programação para Android. Aula 08: Persistência de dados SQL

Chromecast. Seu aplicativo na TV. Ivan de

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

PASSO A PASSO MOVIE MAKER

Programação de Dispositivos Móveis


PJCUS-361 CONTRATO COM CÓDIGO DE BARRAS

C D. C) Coleções: é usada para organizar o conteúdo de áudio, vídeo e imagens em pastas, buscando facilitar a montagem do storyboard.

Desenvolvimento Web com Framework Demoiselle versão 1.0

ArcSoft MediaConverter

Java 2 Standard Edition Como criar classes e objetos

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Capítulo 13 Pastas e Arquivos

Programação para Dispositivos Móveis

Relógio Espião de Pulso - Clássico

MATERIAL DE APRESENTAÇÃO DO SCRATCH

A Linguagem Java. Alberto Costa Neto DComp - UFS

Tecnologia e Informática

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores

Introdução ao Desenvolvimento para Sistema Operacional Android

Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)

Criando um script simples

Android e Bancos de Dados

Programação por Objectos. Java

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Um Exemplo de Refatoração. Prof. Alberto Costa Neto DComp/UFS

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

Tutorial de Computação Introdução a Programação Gráfica em Java para MEC1100 v

O comando switch. c Professores de ALPRO I 04/2012. Faculdade de Informática PUCRS. ALPRO I (FACIN) O comando switch 04/ / 31

AGENDAMENTO PARA IMPORTAÇÃO DE NOTAS FISCAIS 1. PARÂMETROS DO ESTABELECIMENTO CONFIGURAÇÃO DO AGENDADOR... 3

Apostila de Windows Movie Maker

Transcrição:

Programação para a Plataforma Android Aula 7 Mul$mídia Como executar aplicações que contêm músicas? Como abrir vídeos em Android? Quais formatos de músicas são aceitos? Quais formatos de vídeo? Como o$mizar a u$lização de recursos? O sistema de arquivos Android

Recursos Mul$mídia O que são recursos mul$mídia?.. Como poderíamos usá los em um smartphone? Exemplos de aplicação?

Recursos Mul$mídia O que são recursos mul$mídia? Vídeo Som Como poderíamos usá los em um smartphone? Quais métodos certamente teremos de implementar? Exemplos de aplicação? MP3 Player: Escreva uma atividade para tocar uma música assim que a tecla central do Dpad for pressionada.

AulaAc$vity7.java Tocador de MP3 public class AulaAc$vity10 extends Ac$vity { private MediaPlayer mp; Como recursos de som são armazenados e manipulados? @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); setvolumecontrolstream(audiomanager.stream_music); } @Override public boolean onkeydown(int keycode, KeyEvent event) { } }

Recursos de Som Recursos, em geral, são armazenados na pasta res. Arquivos de som seguem o mesmo padrão de uso. A música deve ser iniciada quando a tecla central do D- pad for pressionada.

AulaAc$vity7.java Tocando uma música public boolean onkeydown(int keycode, KeyEvent event) { int resid; switch (keycode) { case KeyEvent.KEYCODE_DPAD_CENTER: case KeyEvent.KEYCODE_ENTER: resid = R.raw. cairnomount_lo; break; default: return super.onkeydown(keycode, event); } if (mp!= null) { mp.release(); } mp = MediaPlayer.create(this, resid); mp.start(); return true; } Como parar a música? O que é este termo: super? Adicione estados a esse evento: ao clicar na tecla central do D- pad, a música deve começar a tocar, se ela já não estiver tocando, e deve parar caso contrário.

Guardando Estados public boolean onkeydown(int keycode, KeyEvent event) { int resid; switch (keycode) { case KeyEvent.KEYCODE_DPAD_CENTER: case KeyEvent.KEYCODE_ENTER: resid = R.raw.tempta$ons; break; default: return super.onkeydown(keycode, event); } Qual a diferença entre stop e release? if (isplaying) { isplaying = false; mp.stop(); mp.release(); } else { isplaying = true; mp = MediaPlayer.create(this, resid); mp.start(); } return true; } E quais formatos de áudio Android suporta? Onde a variável isplaying está definida? AulaAc$vity7.java

Formatos de Áudio WAC AAC (Formato usado no Ipod da Apple) MP3 WMA AMR OGG MIDI

Adicionando Música ao nosso Sudoku Músicas e Atividades: Modifique a atividade Sudoku, para que ela use dois tipos de músicas: A primeira música deve ser tocada na tela inicial do jogo. A segunda música deve ser tocada na tela de jogo (durante o jogo).

Music.java Um Tocador Simples public class Music { private sta?c MediaPlayer mp = null; public sta?c void play(context context, int resource) { stop(context); mp = MediaPlayer.create(context, resource); mp.setlooping(true); mp.start(); } public sta?c void stop(context context) { if (mp!= null) { mp.stop(); mp.release(); mp = null; } } } Para que serve esse modificador: static? Seria possível usar o fato de atividades terem estados? O que essa classe faz? Como usá-la para colocar música no Sudoku?

Sudoku.java Máquina de Estados public class Sudoku extends Ac$vity implements OnClickListener {. @Override protected void onresume() { super.onresume(); Music.play(this, R.raw. cairnomount_lo); } @Override protected void onpause() { super.onpause(); Music.stop(this); } } E como fazer a música tocar durante o jogo?

Game.java E mais máquina de estados public class Game extends Ac$vity {... @Override protected void onresume() { super.onresume(); Music.play(this, R.raw. pipershut_lo); } @Override protected void onpause() { super.onpause(); Music.stop(this); } }

Vídeos Android suporta pelo menos três formatos de vídeo: MP4 H.264 (AVC) H.263 (3GP): este é o formato mais recomendado, pois é um padrão entre os disposi$vos móveis Como arquivos de vídeo são manipulados? Onde os arquivos de vídeo ficam armazenados? Como podemos usar arquivos de vídeo em nossas apps?

VideoAc$vity.java VideoAc$vity public class VideoAc$vity extends Ac$vity { @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.video); VideoView video = (VideoView) findviewbyid(r.id.video); video.setvideopath("/data/samplevideo.3gp"); video.start(); } } E ainda temos de carregar esse vídeo. Temos de definir esse layout.

video.xml VideoView <?xml version="1.0" encoding="ux 8"?> <FrameLayout xmlns:android= "h{p://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <VideoView android:id="@+id/video" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" /> </FrameLayout> Mas ainda temos de carregar o vídeo!

Sistema de Arquivos Android usa o sistema de arquivos do Linux. Videos podem ser lidos diretamente desse sistema de arquivos. Mas antes o video precisa ser colocado em algum diretório. Para visualizar o sistema de arquivos: window show view other Android File explorer

Ainda o Sistema de Arquivos Arquivos podem ser copiados ou removidos diretamente do sistema de arquivos via a interface Eclipse. Se houver algum disposi$vo conectado, pode se acessar o sistema de arquivos via adb, ex.: adb push samplevideo.3gp /data/ samplevideo.3gp

Lendo o sistema de arquivos Android disponibiliza alguns recursos para lermos e escrevermos sobre o sistema de arquivos. public class VideoAc$vity extends Ac$vity { @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); String[] l = this.filelist(); Como subir arquivos para o sistema de arquivos? Log.v("File", "Ready to print:"); for (String s : l) { Log.v("File", s); } } } VideoAc$vity.java O que essa atividade faz?