Résumé Android
Chapitre 1 & 2
Une application Android est composée de :
o Fichiers Sources Java compilés pour une machine virtuelle
o Fichiers XML appelés ressources : interface, textes. . .
o Fichiers de données supplémentaires
o Fichier Manifeste = description du contenu du logiciel
Composition principale d’une application Android :
• Une activité peut être assimilée à un écran structuré par un ensemble de
vues.
• Les vues sont les éléments de l’interface graphique que l’utilisateur voit et
sur lesquels il pourra agir.
• Les contrôles sont eux-mêmes un sous-ensemble de vues (bouton, case à
cocher, etc.)
• Les ressources sont des fichiers externes définissent l’ensemble des textes,
images, etc. utilisés par une application. Ils se trouvent dans le répertoire
res de chaque projet.
• [Link] est le fichier de configuration qui contient la
description de l’application (point d’entrée, permissions, composants, etc.)
Composants applicatifs :
• Service : Fonctionne en tâche de fond, de manière invisible.
Exemple :La mise à jour de sources de données, Le déclenchement de
notifications.
• Fournisseur de contenu : Permet de gérer et de partager des informations
entre applications.
• Gadget : Un composant graphique qui s’installe sur le bureau Android.
Exemple : Le calendrier, le lecteur audio
Eléments d’interactions :
• Intention :
- Permet de diffuser des messages en demandant la réalisation d’une
action.
- Permet aux applications de fournir ou demander des services ou des
données.
• Notification :
Signale une information à l’utilisateur sans interrompre ses actions en cours.
• Récepteur d’Intents : permet à une application d’être à l’écoute des autres
afin de répondre aux objets Intent qui lui sont destinés et envoyés.
• Filtre d’Intents : pour un récepteur, un filtre spécifie le type d’Intents qu’il
peut diffuser.
Architecture Android :
• Le noyau (kernel )
• Machine Virtuelle Dalvik
• Des bibliothèques
• Un framework applicatif
• Des applications …
Types d’applications Android :
• Application de premier plan (ex: un jeu)
• Application d'arrière plan (ex: répondeur automatique aux SMS)
• Intermittente (ex: lecteur de média)
• Widget (ex: météo du jour)
Les ressources :
❖ Types de ressources :
Valeurs simples res/values [Link], [Link] …
Images res/drawable Les ressources de type image .png .jpeg .gif…
Layout res/layout Fichiers XML qui définissent la mise en page des
écrans
Images res/mipmap Images utilisées dans l’interface
Menus res/menu Contient les descriptions XML des menus
Ressources XML res/xml Contient les fichiers XML supplémentaires
❖ Ressources textes :
Syntaxe:
<string name= "nom_chaine">valeur de la chaine</string>
Utilisation des chaines de caractères
- Java: [Link].nom_chaine
- XML: @[package:]string/nom_chaine
❖ Ressources tableaux :
Tableau de n’importe qu’el type :
<array name="tableau_entiers">
<item>1765</item>
<item>3</item>
</array>
Tableau de strings :
<resources>
<string-array name="planets_array">
<item>Earth</item>
<item>Mars</item>
</string-array>
</resources>
❖ Les couleurs :
<resources>
<color name="bleu_transparent"> #50FF00FF</color>
</resources>
❖ Unité de mesure :
<resources>
<dimen name="largeur_bouton">100px</dimen>
<dimen name="taille_texte">5sp</dimen>
</resources>
❖ Ressources layouts :
Exemple de layout: LinearLayout, RelativeLayout, FrameLayout, TableLayout, etc.
Exemple:
<LinearLayout
xmlns:android="[Link]
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
……
</LinearLayout>
❖ Autres ressources :
- Drawable
- Menu
- Bool
- Typed array
❖ Utilisation des ressources :
• Ressources appelées directement dans le code.
Les ressources sont accessibles et utilisées depuis le code grâce à la classe
statique R.
Exemple :
[Link]
[Link].bleu_transparent
Possibilité d’extraire toutes les ressources et récupérer une ressource particulière
Exemple :
Resources res = getResources();
String nom = [Link]([Link].nom_application);
String T[] = [Link]().getStringArray([Link]);
• Ressources référencées par d’autres ressources.
Syntaxe :
attribute="@[package_name:]resource_type/resource_identifier"
Exemple :
android:text="@string/hello"
• Ressources système :
- Si utilisées au sein du code: idem que pour les ressources personnelles.
- Si utilisées dans un fichier XML: préciser android comme espace de
nommage.