Minicurso Android  Ronildo Oliveira
Upcoming SlideShare
Loading in...5
×
 

Minicurso Android Ronildo Oliveira

on

  • 1,233 views

 

Statistics

Views

Total Views
1,233
Views on SlideShare
1,233
Embed Views
0

Actions

Likes
1
Downloads
72
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Minicurso Android  Ronildo Oliveira Minicurso Android Ronildo Oliveira Presentation Transcript

  • MINICURSO DE DESENVOLVIMENTO DE APLICAÇÕES PARA A PLATAFORMA Google
  • ApresentaçãoMinistrante: 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çãoOrientador: 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 mobilidadedo Google.• Diretor Executivo (CEO) daAndroid e da Danger (Companhiade 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 AndroidAs diferentes versões de Android têm desde aversão 1.5, nomes de sobremesas ou bolos (eminglê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.
  • BibliotecasA próxima camada acima do kernel contém asbibliotecas nativas do Android.Essas bibliotecas são todasescritos em C ou C++ ecompiladas para a arquiteturade hardware específicautilizada pelo telefone.
  • Bibliotecas Algumas das mais importantes bibliotecasnativas 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 JAVAJAVA Byte Code Compilador DEX Dalvik Byte Code Dalvik APK Executable
  • AplicaçõesO Android nos fornece um conjunto deaplicaçõ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
  • Activitypackage 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 Rpackage 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_cosavedInstanceState) 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"?><LinearLayoutxmlns: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