chapitre I Introduction et installation
chapitre II Première application
chapitre III Les layouts
chapitre IV Les widgets
chapitre V Les listeners
chapitre VI Les intents
Android ?
Chapitre 1
Introduction et installation
Android est un système d’exploitation, basé sur un noyau linux, destiné aux appareils mobiles (smartphone principalement, mais c’est en train d’évoluer à vitesse grand V, un nombre important de tablettes tactiles grand format (10 ou 7 pouces), tournant sous Android, devraient sortir dans les prochains mois !).
Android est développé par un consortium : l’Open Handset Alliance.
L’Open Hanset Alliance regroupe beaucoup de sociétés liées aux nouvelles technologies (Intel,HTC, Motorola, Garmin,…..), mais le principal contributeur est Google !
En théorie Android est un système libre (tout comme GNU/Linux), mais sans vouloir entrer dans la polémique qui agite le net, je vais dire que…. c’est un peu plus compliqué que cela, Android est libre sur le papier (licence « Apache Open source licence v2 »), mais pas vraiment dans les faits !
Développer des applications sous Android.
Des milliers (voir beaucoup plus !) de personnes (plus ou moins professionnelles) développent des applications sous Android. Beaucoup de ces applications se retrouvent sur le grand supermarché des applications Android mis en place par Google : l’Android Market.
Beaucoup d’applications sont gratuites, d’autres, payantes (en général, quelques euros), certaines, sont de grande qualité, d’autres, beaucoup moins.
Chapitre 2
1ère application
Nous allons créer notre 1ère application, pour cela, dans Eclipse, dans le menu « File » choisissez « New » -> « Project » Sélectionnez alors « Android Project », puis cliquez sur « Next > », une autre fenêtre apparaît :
Complétez le champ « Project name : » avec le nom de votre projet (pour nous cela sera « ex2.1 »).
Dans « Build Target »: choisissez Android 2.2 (ou plus si un SDK plus récent est sorti !) Dans « Properties » :
« Application name: » : comme son nom l’indique, donnez un nom à votre application « Package name » : ici, c’est un peu plus compliqué. Imaginez que vous décidiez d’écrire une application qui porte le nom de « Toto », tellement fier de votre oeuvre, vous publiez votre application sur l’Android Market. Mais à l’autre bout du monde (en Australie par exemple, mais bon, cela n’a aucune importance !) Mr Smith, décide lui aussi de publier une application « Toto » (mais qui, à part le nom, n’a aucun rapport avec la vôtre) : Problème ?
Pas vraiment, car, en théorie, vos 2 applications n’auront pas le même « Package name ».
Chapitre 3
les layouts
Un layout (ou conteneur en bon français) est un objet, au sens POO de terme, qui va contenir des widgets (ou d’autres layouts) comme les Texview (vus au chapitre précédent), les boutons, ….. et vous permettre d’organiser la disposition de ces widgets sur l’écran comme bon vous semble.
Il existe plusieurs types de layout (LinearLayout, RelativeLayout, TableLayout,…), chacun avec des caractéristiques différentes. Par souci de simplification nous allons ici uniquement étudier le LinearLayout (rassurez-vous le LinearLayout est le plus couramment utilisé, les autres étant, plus….exotiques !).
Comme dit plus haut, les layouts sont des classes, des classes qui héritent toutes d’une même classe parente, la classe ViewGroup.
Le LinearLayout va aligner les widgets les uns après les autres à la verticale (en colonne) si vous choisissez « android:orientation= »vertical » » et à l’horizontale (en ligne) si vous choisissez « android:orientation= »horizontal ».
ex 3.1 : main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Texte1" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Texte2" /> </LinearLayout>
Chapitre IV
Les widgets
Les widgets sont eux aussi des objets au sens POO du terme. Chaque type de widgets est une classe qui dérive de la classe « View » (d’ailleurs, la classe « Viewgroup » hérite elle aussi de la classe « View »). Nous placerons systématiquement nos widgets dans des layouts. Commençons donc à étudier quelques widgets.
Les Boutons
Voici un fichier main.xml qui permettra d’afficher un bouton
ex4.1 : main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Un Bouton" /> </LinearLayout>
Nous avons une balise « Button » : les attributs « layout_width » et « layout_height » ne devraient pas vous poser de problème (rien de nouveau). L’attribut « text », vous permet d’afficher du texte dans votre bouton..
De Java a Android (1.16 Mo) (Cours PDF)