dê seus primeiros passos no desenvolvimento com android

Post on 05-Jun-2015

4.735 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

No slide são apresentados os seguintes tópicos: conceitos, estrutura do projeto, gerenciadores de layouts, interface gráfica e como publicar sua app.

TRANSCRIPT

Dê seus primeiros passos no Desenvolvimento com Android

Agenda

Introdução

Conceitos

Estrutura do projeto

Activity

Intent

Interface gráfica

Como publicar sua App

Demonstração

Perguntas e Respostas

Introdução

AndroidPlataforma de desenvolvimento de aplicativos moveis

OHAGrupo de líderes que compartilham esta visão para mudar a experiência móvel para os consumidores.

SO LinuxKernel 2.6

Maquina Virtual DalvikMaquina virtual otimizada para dispositivos moveis

Conceitos

Activity

Activity similar a Jframe do Swing, representa uma tela da aplicação

android.app.Activity e androd.view.View

Metodo setContentView(view)

Conceitos

Classe R

Constantes que facilitam acesso aos recursos do projeto

Graças a classe R que ao inflarmos um layout, usamos

a referencia R.layout.main ou para pegarmos uma

imagem utilizamos R.drawable.ic_louncher.

Para cada arquivos adicionado é cria uma constante

desse objeto na classe R.

Conceitos

AndroidManifest.xmlApresenta informações essenciais sobre o aplicativo para o sistema Android.

Algumas funcionalidades:Ele descreve os componentes da aplicação - activities, services, broadcast receivers e content providers que a aplicação é composto;

Ele declara as permissões do aplicativo deve ter para acessar partes protegidas da API e interagir com outras aplicações;

Ele declara o nível mínimo da API Android que a aplicação requer.

Conceitos

Carregar XML

public class Conceitos extends Activity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_conceitos); }

}

Conceitos

Criação de uma interface gráfica com XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".Conceitos" >

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

</RelativeLayout>

Conceitos

Criação de uma interface gráfica com API

public class Conceitos extends Activity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

TextView view = new TextView(this); view.setText("Exemplo de Texto no Android"); setContentView(view); }

}

Conceitos

Acesso a elementos da tela (findViewById())

Ao criar uma tela usando um arquivo XML de Layout,

surge a necessidade de recuperar os objetos definidos

no arquivo dentro do código-fonte da aplicação.

EditText text = (EditText) findViewById(R.id.ed_conceitos);String digitado = text.getText().toString();Log.i("EXEMPLO", "O texto digitado foi " + digitado);

Conceitos

Log CatO log do sistema Android fornece um mecanismo para coletar e visualizar a saída de depuração do sistema.

Tipos de LogVerboseDebugInfoWarnError

ESTRUTURA DO PROJETO

Estrutura do Projeto

Estrutura do Projeto

src É onde fica o código fonte da nossa aplicação.(source)

gen

Generated source folder(Classe R)

assets Local destinado a guardar arquivos.(Geralmente documentação do sistema)

Estrutura do Projeto

binLocal onde é gerado o arquivo compilado(.apk)

libsLocal onde deve ficar as bibliotecas de terceiros

resPasta de resources da aplicação, aqui ficaram arquivos de layout, imagens, XML de configuração, XML com strings internacionalizáveis, raw files, sons, etc..

ACTIVITY

Uma Activity é um componente do aplicativo que fornece uma tela com a qual os usuários podem interagir, a fim de fazer algo, como discar o telefone, tire uma foto, envie um e-mail, ou visualizar um mapa.

Uma aplicação consiste geralmente de múltiplas Activity que são fracamente ligados uns aos outros.

Activity

Activity

Ciclo de Vida

Activity

Ciclo de Vida

Activity

Exemplo do Ciclo de Vida public class FrameLayout extends Activity {private final String TAG = "FRAME_LAYOUT";

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_frame_layout);

Log.i(TAG, "onCreate() chamado."); }

@Override protected void onStart() { super.onStart(); Log.i(TAG, "onStart() chamado."); }

Activity

Exemplo do Ciclo de Vida @Override protected void onRestart() { super.onRestart(); Log.i(TAG, "onRestart() chamado."); }

@Override protected void onResume() { super.onResume(); Log.i(TAG, "onResume() chamado."); }

@Override protected void onPause() { super.onPause(); Log.i(TAG, "onPause() chamado."); }

Activity

Exemplo do Ciclo de Vida

@Override protected void onStop() { super.onStop(); Log.i(TAG, "onStop() chamado."); }

@Override protected void onDestroy() { super.onDestroy(); Log.i(TAG, "onDestroy() chamado."); }

}

Activity

Navegação entre telas

startActivity(intent) irá iniciar a próxima tela sem qualquer vinculo.

startActivityForResult(intent, codigo) retorna uma informação

para a Activity que a chamou.

Intent it = new Intent(Main.this, WebVieww.class);startActivity(it);

private static final int CLIENTE = 1;

Intent it = new Intent(Main.this, WebVieww.class);startActivityForResult(it, CLIENTE);

Activity

Passagem de parâmetros para a próxima telaPassar parâmetros entre duas telas

Receber esses parâmetros na outra tela

Intent it = new Intent(Main.this, Parametros.class); Bundle params = new Bundle(); params.putString("msg", "Olá GUJavaSC"); it.putExtras(params); startActivity(it);

Intent it = getIntent(); if(it != null){ Bundle params = it.getExtras(); if(params != null){ String msg = params.getString("msg"); Log.i("EXEMPLO", "O parametro recebido é " + msg); }

Outra forma de passar e receber parâmetrosPassar parametros para outra tela.

Receber parametros na outra tela

Activity

Intent it = new Intent(Main.this, Parametros.class); it.putExtra("msg", "Olá GUJavaSC!"); startActivity(it);

Intent it = getIntent(); if(it != null){ String msg = it.getStringExtra("msg"); Log.i("EXEMPLO", "O parametro recebido é " + msg); }

Encerrar uma Activity

finish()

finishActivity()

Na maioria dos casos, você não deve terminar explicitamente uma atividade usando esses métodos, o sistema Android gerencia a vida de uma atividade.

Activity

INTENT

Intent

Refere-se às intenções, operações a serem realizadas.

Seu uso é mais significativo no lançamento de activities.

Com Intents você pode enviar ou recuperar dados.startActivity(intent);getIntent();

Intent

Chamada de aplicações nativasAbrir o browser

Simular uma chamada

Uri uri = Uri.parse("http://www.gujavasc.org"); Intent it = new Intent(Intent.ACTION_VIEW, uri);startActivity(it);

String url = "tel:99999999"; Intent it = new Intent(Intent.ACTION_CALL, Uri.parse(url)); startActivity(it);

INTERFACE GRÁFICA

Interface Gráfica

Gerenciadores de LayoutOrientam o posicionamento dos componentes visuais na tela.

Fazer um componente preencher toda a tela.

Organizar os componentes na horizontal ou vertical;

Posicionar um componente relativo a outro (abaixo, acima ou ao

lado de um componente já existente).

Interface Gráfica

Principais Layouts

FrameLayout

LinearLayout

RelativeLayout

List View

Grid View

Interface Gráfica

FrameLayoutUtilizado quando a tela tem apenas um componente que pode preencher a tela inteira.

Interface Gráfica

LinearLayoutOrganiza seus componentes em uma única coluna ou uma única linha podendo ter orientação Vertical ou Horizontal.

Interface Gráfica

RelativeLayoutPermite posicionar os componentes ao lado, abaixo ou acima de outro componente já existente.

Interface Gráfica

List ViewMostra uma lista de itens. Os itens são automaticamente inseridos na lista usando um Adapter.

Interface Gráfica

List ViewMostra uma grade de itens. Os itens são automaticamente inseridos na grade usando um ListAdapter.

PUBLICAR SUA APP

Publicar sua App

Registre-se em uma conta Google Play.

Acesse o  Google Play

https://play.google.com/apps/publish/

Informe seu dados de identificação. (nome, e-mail...)

Leia e aceite os termos (Developer Distribution

Agreement)

Pague uma taxa de registro de $25

Publicar sua App

Se você for vender sua App, registre-se no  Google Wallet Merchant.

Acesse sua conta de desenvolvedor

https://play.google.com/apps/publish/

Abra o Relatórios Financeiros

Click em Configure uma conta do comerciante agora

Desenvolvimento Android

Por onde começar?

Android StudioAndroid SDK

Perguntas e Respostas

?

top related