SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
MINICURSO DE DESENVOLVIMENTO DE
        APLICAÇÕES PARA
      A PLATAFORMA Google
Apresentação
Ministrante: Ronildo Oliveira da Silva
• Cursando o sétimo semestre do curso Integrado
  Informática IFCE Campus Cedro.
• Monitor de Programação Estruturada no IFCE Campus
  Cedro.
• Programador de aplicações móveis.
Apresentação
Orientador: Derig Almeida Vidal
• Mestre em Computação Aplicada a Redes de
  Computadores, Engenheiro de Produção e Tecnólogo
  em Automática.
• Professor e coordenador do Curso Integrado em
  Informática do IFCE Campus Cedro.
O Que é Android?

• O Android possui: Aplicações, Bibliotecas,
  Frameworks, rica interface de Usuário (UI) e muito
  mais.
• O Android é um ambiente de desenvolvimento de
  software para dispositivos móveis.
• Utiliza-se a linguagem de
  programação Java para desenvolver
  aplicações para a plataforma.
O Que é Android?
     Andrew E. Rubin
• Vice-presidente de mobilidade
do Google.
• Diretor Executivo (CEO) da
Android e da Danger (Companhia
de design de hardware).
O Que é Android?
• Open Handset Alliance™(OHA) é um grupo
  formado por gigantes do mercado de telefonia de
  celulares liderados pelo Google que revelou a
  plataforma Open Source Android e uma versão da
  SDK em 12 de novembro de 2007.
T-Mobile G1
Open Handset Alliance™
Versões do Android
Versões do Android
As diferentes versões de Android têm desde a
versão 1.5, nomes de sobremesas ou bolos (em
inglês) e seguem uma lógica alfabética:
  1.5: Cupcake (Abril de 2009)
  1.6: Donut (Setembro de 2009)
  2.1: Eclair (Janeiro de 2010)
  2.2: FroYo (Frozen Yogourt - Maio de 2010)
  2.3-2.4: Gingerbread (Dezembro de 2010)
  3.0-3.2: Honeycomb (Janeiro de 2011)
  4.0: Ice Cream Sandwich (Outubro de 2011)
  4.1: Jelly Bean (Junho de 2012)
Estrutura da Aplicação Android
•   Arquitetura do Android
•   Linux Kernel
•   Bibliotecas
•   Aplicações
•   Android Runtime
•   Dalvik VM
Arquitetura da Plataforma Android
                                 APLICATIONS
    Home           Contacts         Phone         Browser                ...

                            APLICATION FRAMEWORK
  Activity         Window           Content                         Notification
                                               View System
  Manager          Manager         Providers                         Manager
  Package         Telephony         Resource     Location
                                                                   XMPP Service
  Manager          Manager          Manager      Manager

                  LIBRARIES                            ANDROID RUNTIME
  Surface           Media
                                    SQLite                  Core Libraries
  Manager         Framework
                                                            Dalvik Virtual
 Open GL/S         FreeType         WebKit
                                                              Machine
     SGL              SSL             libc

                                 LINUX KERNEL
                                   Bluetooth    Flash Memory         Binder (PC)
Display Driver   Camera Driver
                                     Driver         Driver             Driver
                                                                       Power
 Usb Driver      Keypad Driver    WiFi Driver   Audio Drivers
                                                                    Management
Linux Kernel
• O Android foi construído sobre uma versão do
  kernel do Linux.

• Isso permite que a plataforma
  Android tenha alta portabilidade.

• Por ser de código aberto, permite
  que talentos individuais e
  companhias melhorem-no ainda mais.
Bibliotecas
A próxima camada acima do kernel contém as
bibliotecas nativas do Android.

Essas bibliotecas são todas
escritos em C ou C++ e
compiladas para a arquitetura
de hardware específica
utilizada pelo telefone.
Bibliotecas
      Algumas das mais importantes bibliotecas
nativas incluem o seguinte:

•   Surface Manager;
•   Gráficos 2D e 3D (SGL);
•   Codecs de mídia (Media Framework);
•   Banco de dados SQL (SQLite);
•   Browser engine (Webkit);
•   FreeType.
Android Runtime



• Core libraries;
• Dalvik Virtual Machine.
Dalvik VM
• Ao invés de usar uma versão da máquina virtual
  Java, tal como Java ME, ele usa a sua própria
  máquina virtual.

• A máquina virtual Dalvik possui as
  seguintes características:
  – Poder existir múltiplas instâncias da
     máquina virtual simultaneamente;
  – Baixo consumo de memória;
  – Mais eficiente do que uma máquina virtual Java.
Dalvik VM
 Código JAVA
 Compilador
   JAVA

JAVA Byte Code
 Compilador
    DEX

  Dalvik Byte
     Code


    Dalvik
                 APK
  Executable
Aplicações
O Android nos fornece um conjunto de
aplicações fundamentais, são elas:
•   um cliente de e-mail;
•   programa de SMS;
•   agenda;
•   mapas;
•   navegador;
•   contatos entre outros.
Instalação e Configuração do Eclipse
            e do Android
Conceitos básicos
•   Activity
•   R.java
•   Método findViewById
•   Manifest
•   Layout
Activity
• A classe android.app.Activity representa
  basicamente uma tela da aplicação.

• Uma tela (Activity) é
  composta de vários
  elementos visuais, os
  quais no Android são
  representados pela
  classe android.view.View
Activity
package ifce.android.minicurso;

import android.app.Activity;
import android.os.Bundle;

public class MinicursoActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
Activity




                                                                                                                   Ciclo de vida de uma Activity
                                                  onCreate()


A Activity é reaberta através do usuário
                                                   onStart()                                     onRestart()


        O processo é destruído
                                                 onResume()

                                                                       A Activity perde o foco
     O programa precisa de mais
                                               Activity Iniciada
             memória


                                           Outra Activity é Iniciada                     A Activity perde o foco


                                                  onPause()


                                   A Activity principal não é mais visível



                                                   onStop()



                                                 onDestroy()


                                      A Activity principal é destruída
Classe R
• É uma classe que possui métodos estáticos com as
  referências de todos os recursos do projeto.

• A classe R é gerada automaticamente pelo plugin
  ADT do eclipse e NUNCA deve ser alterada
  manualmente.
Classe R
package ifce.android.minicurso;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int ic_launcher=0x7f020000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    } }
Método findViewById
    Activity Principal (Activity.java)      View Principal (main.xml)
Button meuBotao01 = (Button)              <LinearLayout>
findViewById(R.id.button1);               <Button
                                          android:id="@+id/button1"
@Override                                 android:layout_width="100dp"
public void onCreate(Bundle               android:layout_height="wrap_co
savedInstanceState)                       ntent"
                                          android:text="@string/telaInic
{
                                          ialBotao" /> </LinearLayout>
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
                                                 Arquivo R.java
}                                        public static final class id {
                                         public static final int
                                         button1 =0x7f050002; }
Android Manifest
• O arquivo AndroidManifest.xml é o alicerce de uma aplicação
  Android.
• Este arquivo deve estar na raiz da aplicação.
• Este arquivo serve para:
   – Descrever o contexto da aplicação;
   – Activities, Services, Content Providers e
      Broadcast Receivers suportados pela aplicação;
   – Permissões necessárias para a aplicação utilizar
      os recursos de hardware e software;
   – Entre outras funções.
Android Manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ifce.android.minicurso"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk android:minSdkVersion="7" />
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".MinicursoActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application> </manifest>
Layout
Layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

   <TextView
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:text="@string/hello" />

</LinearLayout>
Mãos à obra!
Hello World!!
Widgets
Projeto Final
Referências Bibliográficas

Más contenido relacionado

La actualidad más candente

Arquitetura da Plataforma Android
Arquitetura da Plataforma AndroidArquitetura da Plataforma Android
Arquitetura da Plataforma AndroidRonildo Oliveira
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidJosé Alexandre Macedo
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para AndroidJorge Cardoso
 
Atividades e Intenções (Android)
Atividades e Intenções (Android)Atividades e Intenções (Android)
Atividades e Intenções (Android)Natanael Fonseca
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2Jose Berardo
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3Jose Berardo
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
 
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Tchelinux
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 

La actualidad más candente (19)

Arquitetura da Plataforma Android
Arquitetura da Plataforma AndroidArquitetura da Plataforma Android
Arquitetura da Plataforma Android
 
Android Aula 5
Android Aula 5Android Aula 5
Android Aula 5
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento Android
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para Android
 
Android - Conceito e Arquitetura
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e Arquitetura
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
Trabalho android
Trabalho androidTrabalho android
Trabalho android
 
Atividades e Intenções (Android)
Atividades e Intenções (Android)Atividades e Intenções (Android)
Atividades e Intenções (Android)
 
Android Aula 2
Android Aula 2Android Aula 2
Android Aula 2
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2
 
Android
Android Android
Android
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Android
AndroidAndroid
Android
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
 
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Introdução ao Android Studio
Introdução ao Android StudioIntrodução ao Android Studio
Introdução ao Android Studio
 
Android
AndroidAndroid
Android
 

Destacado

Dê seus primeiros passos no desenvolvimento com Android
Dê seus primeiros passos no desenvolvimento com AndroidDê seus primeiros passos no desenvolvimento com Android
Dê seus primeiros passos no desenvolvimento com AndroidRodolfo Faquin Della Justina
 
Curso de Android - Aula #01: Introdução ao Android
Curso de Android - Aula #01: Introdução ao AndroidCurso de Android - Aula #01: Introdução ao Android
Curso de Android - Aula #01: Introdução ao AndroidRenato Sousa
 
Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Rudson Lima
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvelJanynne Gomes
 
Aula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelAula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelJanynne Gomes
 
Aula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisAula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisJanynne Gomes
 
Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Janynne Gomes
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade androidRoberson Alves
 
Introdução ao desenvolvimento de apps para Android - Dia 1/2
Introdução ao desenvolvimento de apps para Android - Dia 1/2Introdução ao desenvolvimento de apps para Android - Dia 1/2
Introdução ao desenvolvimento de apps para Android - Dia 1/2Matheus Calegaro
 
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...Jaffer Veronezi
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma AndroidNatanael Fonseca
 
Aula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisAula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisJanynne Gomes
 

Destacado (18)

Dê seus primeiros passos no desenvolvimento com Android
Dê seus primeiros passos no desenvolvimento com AndroidDê seus primeiros passos no desenvolvimento com Android
Dê seus primeiros passos no desenvolvimento com Android
 
Aula - Activity
Aula  -  ActivityAula  -  Activity
Aula - Activity
 
Curso de Android - Aula #01: Introdução ao Android
Curso de Android - Aula #01: Introdução ao AndroidCurso de Android - Aula #01: Introdução ao Android
Curso de Android - Aula #01: Introdução ao Android
 
Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?
 
Android - Parte 8
Android - Parte 8Android - Parte 8
Android - Parte 8
 
Conhecendo android
Conhecendo androidConhecendo android
Conhecendo android
 
Pre projeto ufrr
Pre projeto ufrrPre projeto ufrr
Pre projeto ufrr
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvel
 
Aula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelAula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvel
 
Aula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisAula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveis
 
Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade android
 
Introdução ao desenvolvimento de apps para Android - Dia 1/2
Introdução ao desenvolvimento de apps para Android - Dia 1/2Introdução ao desenvolvimento de apps para Android - Dia 1/2
Introdução ao desenvolvimento de apps para Android - Dia 1/2
 
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...
Aplicativo móvel em Android para monitoramento de rotas dos usuários de trans...
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
 
Aula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisAula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveis
 
Android Game Engine
Android Game EngineAndroid Game Engine
Android Game Engine
 
Android Aula 1
Android Aula 1Android Aula 1
Android Aula 1
 

Similar a Minicurso Android Ronildo Oliveira

Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CERonildo Oliveira
 
Introdução ao android
Introdução ao androidIntrodução ao android
Introdução ao androidPaulo Remoli
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma AndroidÉdipo Souza
 
Android Palestra
Android PalestraAndroid Palestra
Android PalestraRenato
 
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...Adriel Café
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaGPrimola
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rqKMILT
 
APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)Walanem Figueiredo
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidRafael Sakurai
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidMessias Batista
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaMessias Batista
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Androidjgbirk
 
Construindo sua primeira aplicação android
Construindo sua primeira aplicação androidConstruindo sua primeira aplicação android
Construindo sua primeira aplicação android666Insanity
 

Similar a Minicurso Android Ronildo Oliveira (20)

Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CE
 
Introdução ao android
Introdução ao androidIntrodução ao android
Introdução ao android
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma Android
 
Android Palestra
Android PalestraAndroid Palestra
Android Palestra
 
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno Cotta
 
Android
AndroidAndroid
Android
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rq
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)
 
Apresentação Google Android
Apresentação Google AndroidApresentação Google Android
Apresentação Google Android
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao Android
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Oficina Sesc Android - V1
Oficina Sesc Android - V1Oficina Sesc Android - V1
Oficina Sesc Android - V1
 
Android - Notas de aula
Android - Notas de aulaAndroid - Notas de aula
Android - Notas de aula
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Android
 
Construindo sua primeira aplicação android
Construindo sua primeira aplicação androidConstruindo sua primeira aplicação android
Construindo sua primeira aplicação android
 

Más de Ronildo Oliveira

Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Ronildo Oliveira
 
Towards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicTowards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicRonildo Oliveira
 
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...Ronildo Oliveira
 
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Ronildo Oliveira
 
A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...Ronildo Oliveira
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoRonildo Oliveira
 
Realidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRealidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRonildo Oliveira
 
Scape From Weirdland - O Jogo
Scape From Weirdland - O JogoScape From Weirdland - O Jogo
Scape From Weirdland - O JogoRonildo Oliveira
 
Documento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneDocumento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneRonildo Oliveira
 
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...Ronildo Oliveira
 
Calculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisCalculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisRonildo Oliveira
 
Apresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksApresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksRonildo Oliveira
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisRonildo Oliveira
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisRonildo Oliveira
 
Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Ronildo Oliveira
 
Exercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresExercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresRonildo Oliveira
 
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Ronildo Oliveira
 
Curso Android - 01 Introdução ao Android
Curso Android - 01 Introdução ao AndroidCurso Android - 01 Introdução ao Android
Curso Android - 01 Introdução ao AndroidRonildo Oliveira
 
Curso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesCurso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesRonildo Oliveira
 

Más de Ronildo Oliveira (20)

Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017
 
Towards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicTowards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic Music
 
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
 
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
 
A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
 
Realidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRealidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em Jogos
 
Scape From Weirdland - O Jogo
Scape From Weirdland - O JogoScape From Weirdland - O Jogo
Scape From Weirdland - O Jogo
 
Documento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneDocumento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu Telefone
 
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
 
Calculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisCalculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de Integrais
 
Apresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksApresentação de Slide - Deadlocks
Apresentação de Slide - Deadlocks
 
Deadlocks (Resumo)
Deadlocks (Resumo)Deadlocks (Resumo)
Deadlocks (Resumo)
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionais
 
Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.
 
Exercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresExercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de Computadores
 
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
 
Curso Android - 01 Introdução ao Android
Curso Android - 01 Introdução ao AndroidCurso Android - 01 Introdução ao Android
Curso Android - 01 Introdução ao Android
 
Curso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesCurso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos Chaves
 

Minicurso Android Ronildo Oliveira

  • 1. MINICURSO DE DESENVOLVIMENTO DE APLICAÇÕES PARA A PLATAFORMA Google
  • 2. Apresentação Ministrante: Ronildo Oliveira da Silva • Cursando o sétimo semestre do curso Integrado Informática IFCE Campus Cedro. • Monitor de Programação Estruturada no IFCE Campus Cedro. • Programador de aplicações móveis.
  • 3. Apresentação Orientador: Derig Almeida Vidal • Mestre em Computação Aplicada a Redes de Computadores, Engenheiro de Produção e Tecnólogo em Automática. • Professor e coordenador do Curso Integrado em Informática do IFCE Campus Cedro.
  • 4. O Que é Android? • O Android possui: Aplicações, Bibliotecas, Frameworks, rica interface de Usuário (UI) e muito mais. • O Android é um ambiente de desenvolvimento de software para dispositivos móveis. • Utiliza-se a linguagem de programação Java para desenvolver aplicações para a plataforma.
  • 5. O Que é Android? Andrew E. Rubin • Vice-presidente de mobilidade do Google. • Diretor Executivo (CEO) da Android e da Danger (Companhia de design de hardware).
  • 6. O Que é Android? • Open Handset Alliance™(OHA) é um grupo formado por gigantes do mercado de telefonia de celulares liderados pelo Google que revelou a plataforma Open Source Android e uma versão da SDK em 12 de novembro de 2007.
  • 10. Versões do Android As diferentes versões de Android têm desde a versão 1.5, nomes de sobremesas ou bolos (em inglês) e seguem uma lógica alfabética: 1.5: Cupcake (Abril de 2009) 1.6: Donut (Setembro de 2009) 2.1: Eclair (Janeiro de 2010) 2.2: FroYo (Frozen Yogourt - Maio de 2010) 2.3-2.4: Gingerbread (Dezembro de 2010) 3.0-3.2: Honeycomb (Janeiro de 2011) 4.0: Ice Cream Sandwich (Outubro de 2011) 4.1: Jelly Bean (Junho de 2012)
  • 11. Estrutura da Aplicação Android • Arquitetura do Android • Linux Kernel • Bibliotecas • Aplicações • Android Runtime • Dalvik VM
  • 12. Arquitetura da Plataforma Android APLICATIONS Home Contacts Phone Browser ... APLICATION FRAMEWORK Activity Window Content Notification View System Manager Manager Providers Manager Package Telephony Resource Location XMPP Service Manager Manager Manager Manager LIBRARIES ANDROID RUNTIME Surface Media SQLite Core Libraries Manager Framework Dalvik Virtual Open GL/S FreeType WebKit Machine SGL SSL libc LINUX KERNEL Bluetooth Flash Memory Binder (PC) Display Driver Camera Driver Driver Driver Driver Power Usb Driver Keypad Driver WiFi Driver Audio Drivers Management
  • 13. Linux Kernel • O Android foi construído sobre uma versão do kernel do Linux. • Isso permite que a plataforma Android tenha alta portabilidade. • Por ser de código aberto, permite que talentos individuais e companhias melhorem-no ainda mais.
  • 14. Bibliotecas A próxima camada acima do kernel contém as bibliotecas nativas do Android. Essas bibliotecas são todas escritos em C ou C++ e compiladas para a arquitetura de hardware específica utilizada pelo telefone.
  • 15. Bibliotecas Algumas das mais importantes bibliotecas nativas incluem o seguinte: • Surface Manager; • Gráficos 2D e 3D (SGL); • Codecs de mídia (Media Framework); • Banco de dados SQL (SQLite); • Browser engine (Webkit); • FreeType.
  • 16. Android Runtime • Core libraries; • Dalvik Virtual Machine.
  • 17. Dalvik VM • Ao invés de usar uma versão da máquina virtual Java, tal como Java ME, ele usa a sua própria máquina virtual. • A máquina virtual Dalvik possui as seguintes características: – Poder existir múltiplas instâncias da máquina virtual simultaneamente; – Baixo consumo de memória; – Mais eficiente do que uma máquina virtual Java.
  • 18. Dalvik VM Código JAVA Compilador JAVA JAVA Byte Code Compilador DEX Dalvik Byte Code Dalvik APK Executable
  • 19. Aplicações O Android nos fornece um conjunto de aplicações fundamentais, são elas: • um cliente de e-mail; • programa de SMS; • agenda; • mapas; • navegador; • contatos entre outros.
  • 20. Instalação e Configuração do Eclipse e do Android
  • 21. Conceitos básicos • Activity • R.java • Método findViewById • Manifest • Layout
  • 22. Activity • A classe android.app.Activity representa basicamente uma tela da aplicação. • Uma tela (Activity) é composta de vários elementos visuais, os quais no Android são representados pela classe android.view.View
  • 23. Activity package ifce.android.minicurso; import android.app.Activity; import android.os.Bundle; public class MinicursoActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
  • 24. Activity Ciclo de vida de uma Activity onCreate() A Activity é reaberta através do usuário onStart() onRestart() O processo é destruído onResume() A Activity perde o foco O programa precisa de mais Activity Iniciada memória Outra Activity é Iniciada A Activity perde o foco onPause() A Activity principal não é mais visível onStop() onDestroy() A Activity principal é destruída
  • 25. Classe R • É uma classe que possui métodos estáticos com as referências de todos os recursos do projeto. • A classe R é gerada automaticamente pelo plugin ADT do eclipse e NUNCA deve ser alterada manualmente.
  • 26. Classe R package ifce.android.minicurso; public final class R { public static final class attr { } public static final class drawable { public static final int ic_launcher=0x7f020000; } public static final class layout { public static final int main=0x7f030000; } public static final class string { public static final int app_name=0x7f040001; public static final int hello=0x7f040000; } }
  • 27. Método findViewById Activity Principal (Activity.java) View Principal (main.xml) Button meuBotao01 = (Button) <LinearLayout> findViewById(R.id.button1); <Button android:id="@+id/button1" @Override android:layout_width="100dp" public void onCreate(Bundle android:layout_height="wrap_co savedInstanceState) ntent" android:text="@string/telaInic { ialBotao" /> </LinearLayout> super.onCreate(savedInstanceState); setContentView(R.layout.main); Arquivo R.java } public static final class id { public static final int button1 =0x7f050002; }
  • 28. Android Manifest • O arquivo AndroidManifest.xml é o alicerce de uma aplicação Android. • Este arquivo deve estar na raiz da aplicação. • Este arquivo serve para: – Descrever o contexto da aplicação; – Activities, Services, Content Providers e Broadcast Receivers suportados pela aplicação; – Permissões necessárias para a aplicação utilizar os recursos de hardware e software; – Entre outras funções.
  • 29. Android Manifest <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ifce.android.minicurso" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="7" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".MinicursoActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
  • 31. Layout <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>