1. Começando pelo ponto de entrada de inicialização
Para entender como qualquer aplicativo Android é iniciado, você precisa começar pelo arquivo de configuração global: AndroidManifest.xml.
Abra o AndroidManifest.xml e procure pelo seguinte código:
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>Code language: HTML, XML (xml)
Esse trecho de código faz três coisas importantes:
- Registrar a Activity:
MainActivityprecisa estar registrada noAndroidManifest.xml; caso contrário, o sistema não a reconhece e não pode usá-la. - Declarar a entrada principal:
<action android:name="android.intent.action.MAIN" />indica que esta é a Activity principal do aplicativo. - Declarar a entrada do launcher:
<category android:name="android.intent.category.LAUNCHER" />significa que esta é a Activity iniciada quando você toca no ícone do aplicativo na tela inicial.
Apenas uma Activity que possui tanto
MAINquantoLAUNCHERpode servir como ponto de entrada do aplicativo.
2. O que é uma Activity?
A Activity é a vitrine de um aplicativo Android — tudo o que você vê na tela é executado dentro de uma Activity.
Abra o MainActivity.java no diretório app/java/. O código é assim:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}Code language: JavaScript (javascript)
Vamos analisar peça por peça:
| Código | Explicação |
|---|---|
extends AppCompatActivity | Herda de AppCompatActivity, uma Activity compatível com versões anteriores até o Android 2.1 |
Toda Activity deve herdar de Activity (ou de uma subclasse) | Este é um requisito obrigatório para componentes Android |
onCreate() | Um método do ciclo de vida executado automaticamente quando a Activity é criada |
setContentView(R.layout.activity_main) | Carrega e vincula um arquivo de layout à Activity atual |

3. Separação de lógica e visualização (similar ao MVC)
O Android adota uma filosofia de design que separa lógica e visualização, semelhante ao padrão MVC:
- Lógica: Escrita nas classes Activity no diretório
java/ - Visualização: Escrita nos arquivos XML de layout no diretório
res/layout/
O setContentView(R.layout.activity_main) é a ponte que conecta lógica e visualização — ele “insere” o layout activity_main.xml dentro da MainActivity.

4. Análise do arquivo de layout
O arquivo de layout fica em res/layout/activity_main.xml.

O Android Studio oferece dois modos de edição:
| Modo | Descrição |
|---|---|
| Design | Interface visual de arrastar e soltar, WYSIWYG |
| Text | Interface de edição de código XML |
Abra o activity_main.xml. O conteúdo principal é o seguinte:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Olá Foxdevelop" />Code language: HTML, XML (xml)
TextViewé um componente básico do Android usado para exibir texto- O atributo
android:textespecifica o conteúdo de texto exibido no componente
O “Hello World” (ou o texto personalizado que você definiu) é definido aqui, não no código Java.
5. Resumo completo do fluxo de inicialização
O processo de inicialização completo, em sequência:
O usuário toca no ícone do aplicativo na tela inicial
↓
O sistema lê o AndroidManifest.xml
↓
Encontra a Activity com MAIN + LAUNCHER (ou seja, MainActivity)
↓
Cria uma instância de MainActivity
↓
Executa o método de ciclo de vida onCreate()
↓
setContentView() carrega o layout activity_main.xml
↓
O TextView no layout exibe seu texto
↓
A tela mostra "Hello World"Code language: JavaScript (javascript)
Em uma frase:
Arquivo de configuração declara a entrada → A Activity principal é criada → onCreate é executado → O arquivo de layout é carregado → Os controles são renderizados na tela
6. Dicas de desenvolvimento
- Não é preciso fechar o emulador toda vez: Após executar, se quiser parar o aplicativo, basta clicar no botão 🔴 Stop na barra de ferramentas. Não é necessário desligar ou sair do emulador.
- Após alterar o código, basta clicar em ▶ Run para reimplantar e ver as mudanças.

7. Resumo
| Camada | Arquivo correspondente | Responsabilidade |
|---|---|---|
| Configuração | AndroidManifest.xml | Declara a Activity de entrada |
| Lógica | MainActivity.java | Controla o comportamento da Activity |
| Visualização | activity_main.xml | Define o conteúdo da interface |
Arquivo de configuração → Activity principal → Método
onCreate()→ Carregar layout de visualização → Exibição na tela
Como um aplicativo realmente funciona