De AndroidManifest is verplicht. Zonder manifest-bestand, kan je de app niet genereren. Als je het bestand opent, ziet het er ongeveer zo uit:
<syntaxhighlight lang="xml"><source langline="xmlline">
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
</application>
</manifest>
</source>
</syntaxhighlight>
De <manifest>-tag heeft 4 atrributen:
* <code><service></code>: Een achtergrondproces die je niet op het scherm ziet.
* <code><receiver></code>: Een onderdeel die kan worden opgestart als er iets op het systeem gebeurt.
* <code><provider></code>
<br>
In de volgende les gaan we verder in op de <code><activity></code>-tag.
==Les 3: Activities==
===Definiëren===Activities worden bij gewone apps het meest gebruikt. Elke activity die je gebruikt, moet je in de AndroidManifest.xmlopgeven.
<br>
Een activity definieer je binnen de <code><application></code>-tag. Dat doe je zo:
<presyntaxhighlight lang="xml" line="line">
<application
...
</application>
</presyntaxhighlight>Hierna kan je de activity gebruiken, anders krijg je een error: Activity not Found.
<br>
Als je wilt dat je de activity kan opstarten vanaf je homescreen, dan moet je de volgende activity toevoegen:
<presyntaxhighlight lang="xml" line="line">
<application
...
</application>
</presyntaxhighlight>
Je hebt nu een Intent Filter toegevoegd. Dit filter zorgt ervoor dat de activity wordt gestart, als het filter aan bepaalde voorwaarden voldoet. In dit geval, als je app is opgestart via het homescreen.
Voeg je meer activities toe met hetzelfde Intent Filter (in dit geval voor homescreen), dan heb je de keuze welke activity je opstart. In dit geval zorgt <code>activity:label</code> ervoor welke naam er komt te staan bij het app icoontje. Het app-icoontje zelf definieer je met <code>activity:icon="@drawable/ic_naamVanIcon"</code>.
<br>
Het class-pad is de locatie waar je activity staat. Als je activity staat bij <code>com.example.app.MainActivity</code> en de <code>package</code> is <code>com.example.app</code>, dan kan je een relatief class-pad gebruiken, namelijk <code>.MainActivity</code>, anders moet je het volledige pad opgeven.
<br>
Nadat we de activity hebben gedefinieerd, kunnen we de activity zelf maken. Dit gebeurt in Java. Als de activity nog niet bestaat, moet je hem aanmaken. Zoals hierboven maken we de <code>com.example.app.MainActivity</code> aan.<br>Alle JAVA-bestanden staan in de map <code>src/</code> (Eclipse) of <code>java/</code> (Android Studeo (Gradle)).In dit geval maak je een bestand aan met de naam <code>MainActivity.java</code> in de map <code>src/com/example/app/</code> of <code>java/com/example/app/</code>. ===Maken===Nu het bestand is aangemaakt, gaan we het bewerken. Als bestand leeg is type je op de eerste regel:<syntaxhighlight lang="java" line="line">package com.example.app;</syntaxhighlight>Dit geeft aan in welke package de JAVA-class zit. LET OP: Dit hoeft niet hetzelfde te zijn als die al in de AndroidManifest.xml. Vervolgens gaan we de class zelf maken:<syntaxhighlight lang="java" line="line">package com.example.app; public class MainActivity{ }</syntaxhighlight>Het probleem is dat dit nu nog geen activity is.Je zal dus een error krijgen. Zo maak je er geen activity van:<syntaxhighlight lang="java" line="line">package com.example.app; import android.app.Activity; public class MainActivity extends Activity{ }</syntaxhighlight>De import geeft aan welke JAVA-classes je gebruikt.(Soms hebben classes dezelfde naam maar bevinden ze zich in een andere package: <code>com.example.app.Test</code> en <code>org.mijnpackage.kaas.Test</code>.)In dit geval gebruiken we de class <code>Activity</code> uit <code>android.app</code>.De niet-gebruikte imports worden vaak geel onderstreept. Nu kan de activity opgestart worden.Het enige wat je nu ziet is: - De titel (opgegeven in AndroidManifest) - Eventueel het icoontje (opgegeven in AndroidManifest) - Een leeg scherm in het opgegeven thema of standaard thema (opgegeven in AndroidManifest) Dat is niet bestaatveel.Om iets te laten zien gaan we ###onCreate [[Category:Tutorials]]