em 2007, lançado em 2008 Usa o kernel do Linux Roda uma máquina virtual Java própria: Dalvik VM Muitas bibliotecas Java funcionam sem alterações na Dalvik, mas nem todas
ícone do app... assets/ - outros arquivos usados por seu app (imagem, música, texto...) gen/ - código-fonte gerado automaticamente AndroidManifest.xml - configuração do app (nome, versão do Android, telas, permissões...)
Activity (Main) é criada Cada Activity é definida em dois arquivos... res/layout/activity_nome.xml (visual) src/.../NomeActivity.java (comportamento) ... e é listada no arquivo AndroidManifest.xml
<string name="menu_settings">Settings</string> </resources> res/values/strings.xml strings.xml útil para traduzir um app para vários idiomas (um arquivo strings.xml por idioma)
{ public static final int activity_main=0x7f030000; } public static final class string { public static final int app_name=0x7f040000; public static final int hello_world=0x7f040001; public static final int menu_settings=0x7f040002; } ... } gen/R.java R (arquivo gerado pelo compilador) Cada recurso é identificado por um número. O compilador gera constantes para facilitar o uso de recursos no código-fonte.
{ public static final int button1=0x7f070001; public static final int menu_settings=0x7f070002; public static final int textView1=0x7f070000; } ... } gen/R.java R (arquivo gerado pelo compilador)
botão, altere o TextView para o valor do campo de texto (use getText()). Boa prática: crie um atributo para cada view e inicialize todos no onCreate (usando findViewbyId)
para requisitar funcionalidades de outros componentes Exemplo: uma Activity envia um Intent para requisitar ao sistema que outra Activity seja aberta Outro exemplo: uma Activity envia um Intent para requisitar ao sistema que abra um navegador na página www.google.com
Passando dados de uma Activity para outra Bundle extras = getIntent().getExtras() if (extras != null) { float x = extra.getFloat(“pi”); } OutraActivity.java Pode ser chamado no onCreate()