Dê seus primeiros passos no desenvolvimento com Android
-
Upload
rodolfo-faquin-della-justina -
Category
Technology
-
view
4.735 -
download
1
description
Transcript of Dê seus primeiros passos no desenvolvimento com Android
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
?