Développement sur Android

Dimension: px
Commencer à balayer dès la page:

Download "Développement sur Android"

Transcription

1 Développement sur Android V. Barichard LERIA - Département Informatique Université d Angers L3 - Info L3 - Info Développement sur Android 1

2 Une histoire très récente La naissance du smartphone 1994 : Le Simon IBM 1996 : Les Nokia sous Symbian 1997 : Les smartphones Ericsson 2001 : L environnement Palm OS 2002 : Le Pocket PC de Microsoft 2002 : Les smartphones BlackBerry 2007 : L Iphone avec l ios d Apple 2008 : Le HTC Dream sous l Android de Google L3 - Info Développement sur Android 4

3 Une histoire très récente Le développement sur smartphones L émergence de ios ios est le premier système d exploitation démocratisant l utilisation des smartphones Simple d utilisation et pourvu d un grand nombre d applications il plait au plus grand nombre Il est associé à un «SDK» et un «store» d applications accessibles aux développeurs BlackBerry est plus orienté vers les professionnels Windows axe son système vers l amusement Android dans ses premières versions était moins simple que ios mais plus complet et paramétrable Il centre ses développements vers la géolocalisation et les réseaux sociaux Il offre comme ios un «SDK» (Open Source) et un «store» d applications L3 - Info Développement sur Android 5

4 Une histoire très récente Google Slogan : «Don t be evil» Fondé le 27 septembre 1998 par Larry Page et Sergey Brin Chiffre d affaires en 2012 : 50, 2 milliards de $ Effectif (le 20 Juillet 2012) : Développe des produits connus et répandus : Moteur de recherche, YouTube, Chrome, AdSense, GoogleEarth, Android Google a bâti sa renommée grâce à l utilisation de produits «Open Source» En retour Google soutient l Open Source en employant certains de ses grands acteurs C est en appliquant cette idée qu il développe Android, un système d exploitation libre pour smartphones L3 - Info Développement sur Android 6

5 Une histoire très récente Android Android est un système d exploitation Open Source basé sur un noyau Linux Il fonctionne sur smartphones, tablettes, montres, lunettes,... Initialement développé par une startup du même nom, rachetée par Google en 2005 En 2008, le gphone est lancé aux États-Unis dans un parteneriat entre Google et T-mobile La mascotte BugDroid est un personnage du jeu Gauntlet : The Third Encounter sorti sur Atari dans les années 1990 L3 - Info Développement sur Android 7

6 Une histoire très récente Enjeux pour Google Avènement de l Open Handset Alliance Google est dépendant d acteurs tiers du marché Sa politique actuelle est d étendre aux smartphones ses services existants (recherche, publicité, réseaux sociaux,... ) En 2007, Google initie la création de l Open Handset Alliance Composée en 2013 de 84 industriels A pour objectif de développer des normes ouvertes pour les appareils mobiles Google devient acteur dans la partie matérielle avec le rachat de Motorola Mobility Diversification des appareils utilisant Android (téléviseurs, appareils photos, montres, lunettes,... ) L3 - Info Développement sur Android 8

7 Une histoire très récente Stratégie et rentabilité d Android Revenus basés sur la vente d applications et l intégration de la publicité Android est rentable depuis octobre 2010 et génère plus de revenus qu ios depuis novembre 2010 Stratégie de développement : Basée sur l Open Source Un «store» de plusieurs milliers d applications Des mises à jours régulières et faciles d installation Un système ouvert pour facilité sa diffusion et son adaptation sur différents matériels L3 - Info Développement sur Android 9

8 Le SDK d Android et Éclipse Qu est-ce qu un programme Android? Android offre un framework riche mais suffisamment rigide et étanche : Du XML pour les interfaces Les activités : briques de base d une application Les services : conçus pour durer Les fournisseurs de contenus : abstraction de données Les intentions (intents) : interagir avec le système Android permet d accéder aux fonctionnalités avancées de l appareil : Stockage (base de données, support externe) Réseau (Wifi, Bluetooth, 3G,... ) Multimédia (lecture audio, photo, caméra) GPS (géolocation des applications par différents moyens) Services de téléphonie (appels, SMS) L3 - Info Développement sur Android 11

9 Le SDK d Android et Éclipse Le SDK d Android Langage Java Sauf cas particuliers, une application Android est écrite en Java Le code Java est compilé pour pouvoir s exécuter sur la machine virtuelle Dalvik embarquée sur Android L application est empaquetée dans un fichier APK (Android PacKage) puis installée sur l appareil Le JDK (Java Development Kit) est un prérequis à la réalisation d un programme Android Il est conseillé d installer le SDK Java de Sun/Oracle L3 - Info Développement sur Android 12

10 Le SDK d Android et Éclipse Le SDK d Android Installation Les outils de développement d Android : Installation «des» SDK et des greffons : Dans le répertoire tools/, lancer l Android SDK and AVD Manager (exécuter le script android ou le programme setup.exe) Sélectionner puis installer les versions du SDK voulues ainsi que les greffons tiers requis (API Google Maps) L3 - Info Développement sur Android 13

11 Le SDK d Android et Éclipse Le SDK d Android La jungle des matériels et des versions Plusieurs versions d Android coexistent À chaque version du système est associé un niveau d API Une «cible» est la combinaison d un niveau d API et d un indicateur précisant si l on inclut les API Google : 10 : Android GINGERBREAD 13 : Android 3.2 HONEYCOMB 15 : Android ICE CREAM SANDWICH 16/17/18 : Android 4.1.x 4.2.x 4.3 JELLY BEAN 19 : Android 4.4 KITKAT L3 - Info Développement sur Android 14

12 Le SDK d Android et Éclipse L émulateur, un outil indispensable L émulateur Android permet de simuler plusieurs terminaux Informations nécessaires à la configuration d un AVD : Une version cible du SDK Des informations sur le stockage (mémoire, carte SD) Résolution de l appareil choisi L3 - Info Développement sur Android 15

13 Le SDK d Android et Éclipse Monitor, le couteau Suisse Monitor permet de : Parcourir les logs de l émulateur Modifier la position GPS Simuler la réception de SMS ou d appels Prendre une capture d écran de l émulateur Accéder au gestionnaire du SDK et des émulateurs... L3 - Info Développement sur Android 16

14 Le SDK d Android et Éclipse Éclipse et Android Éclipse est un IDE adapté pour le développement Java Combiné au Plugin ADT il permet de créer et gérer des applications Android Création de projet Gestion des émulateurs Compilation, déboggage et exécution dans un émulateur Éclipse n est toutefois pas indispensable : Apache Ant (version ou supérieure) permet de compiler un projet Android Il faut ensuite utiliser android et adb pour exécuter des actions spécifiques Android (création de projet, déploiement,... ) L3 - Info Développement sur Android 17

15 Ma première application Android Création d un projet En ligne de commande Un squelette complet pour un projet Android peut-être créé par la commande suivante : android create project --target "android-18" \ --path ProjetTest \ --activity Debut \ --package com.univangers.l3info.projettest Liste des cibles disponibles : android list targets Compilation, installation : ant clean debug install Un fichier apk a été créé Le programme est disponible sur l émulateur dans le launcher L3 - Info Développement sur Android 19

16 Ma première application Android Organisation d un projet En ligne de commande Un projet Android est constitué d une arborescence de répertoires et de fichiers : AndroidManifest.xml, build.xml, *.properties, proguard-project.txt bin/, libs/, res/, src/, assets/, gen/ Le répertoire src/ contient la hiérarchie des activités La première compilation produira le fichier R.java contenant l activité principale bin/nomapp-*.apk est la véritable application Android nomapp-debug-aligned.apk correspond à l application optimisée et compilée en mode debug L3 - Info Développement sur Android 20

17 Ma première application Android Organisation d un projet Le fichier AndroidManifest.xml AndroidManifest.xml déclare les activités, services ainsi que la façon dont il s intègre au système <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" package="com.univangers.l3info.projettest"> <application android:label="@string/app_name" android:icon="@drawable/ic_launcher"> <activity android:name="debut" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest> Le nom du paquet Java est la «base» de l application et de l espace de nom Il sert également d identifiant unique L3 - Info Développement sur Android 21

18 Ma première application Android Création d un projet Sous Éclipse/ADT Le SDK Android met à disposition le plugin Éclipse ADT : Assistants pour la création d un projet Boutons et raccourcis pour la compilation et l exécution des applications Une ébauche de conception de l interface à la souris Création et gestion des émulateurs Il est possible d importer un projet Android ainsi que d en créer un de zéro Intégration de monitor pour parcourir les fichiers journaux, modifier la position GPS, simuler des appels ou SMS Lors de l exécution du projet, il faut avoir un fichier java dans l onglet actif. Si l éditeur contient un fichier xml, l exécution provoquera une erreur L3 - Info Développement sur Android 22

19 Ma première application Un bouton et clic la date se met à jour... package com.univangers.l3info.projettest; import android.app.activity; import android.os.bundle; import android.view.view; import android.widget.button; import java.util.date; public class Debut extends Activity implements View.OnClickListener { Button btn; /** Called when the activity is first created. public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); btn = new Button(this); btn.setonclicklistener(this); updatetime(); setcontentview(btn); } public void onclick(view view) { updatetime(); } private void updatetime() { btn.settext(new Date().toString()); } } L3 - Info Développement sur Android 24

20 Description de l interface graphique Le choix des ressources en XML Séparer la description de l interface de son comportement Les layouts XML sont stockés dans res/layout aapt est appelé automatiquement à la compilation pour intégrer les layouts Chaque fichier XML décrit une View, il contient une arborescence d éléments dont les attributs peuvent : Décrire l aspect d un widget Décrire le comportement d un conteneur Les widgets sont accessibles depuis le code Java Le nom du fichier XML est celui de la classe du widget de la vue L3 - Info Développement sur Android 25

21 Description de l interface graphique res/layout/main.xml <?xml version="1.0" encoding="utf-8"?> <Button xmlns:android=" android:id="@+id/button" android:text="" android:layout_width="match_parent" android:layout_height="match_parent" /> fill_parent a été renommé en match_parent depuis Android 2.2, version 8 de l API Code public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); btn = (Button)findViewById(R.id.button); btn.setonclicklistener(this); updatetime(); } Convention de format Seule la première occurrence de l id fait apparaitre le «+» L3 - Info Développement sur Android 26

22 Les «widgets» Introduction Les principaux widgets héritent de la classe View Ils ont une taille minimale qui s adapte en fonction de leur contenu Le padding permet de contrôler l espacement avec les widgets adjacents Un widget peut changer d état (actif/inactif) avec setenabled() requestfocus() donne le focus à un widget particulier getparent() retourne le widget ou le conteneur parent findviewbyid() renvoie un widget d après son identifiant getrootview() renvoie la racine de l arborescence (fournie à l activité via l appel à setcontentview()) L3 - Info Développement sur Android 28

23 Les «widgets» Les «labels» et les «boutons» Le widget label est obtenu avec une instance de TextView Un élément TextView possède de nombreux attributs : android:text, android:typeface,... Le widget Button (sous-classe de TextView) a déjà été vu plus tôt Depuis Android 1.6, un écouteur de clic peut être ajouté à la ressource : Une méthode publique de l activité (prenant un argument View et renvoyant void) doit être définie L attribut android:onclick du Button doit être renseigné L3 - Info Développement sur Android 29

24 Les «widgets» Les «labels» et les «boutons» exemple <?xml version="1.0" encoding="utf-8"?> <Button xmlns:android=" android:text="" android:onclick="clicreaction" android:layout_width="match_parent" android:layout_height="match_parent" />... public class Debut extends Activity public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); updatetime(); } public void clicreaction(view view) { updatetime(); } private void updatetime() { Button btn; btn = (Button)findViewById(R.id.button); btn.settext(new Date().toString()); } } L3 - Info Développement sur Android 30

25 Les «widgets» Les images Les widgets ImageView et ImageButton permettent d intégrer des images ImageButton (sous-classe de ImageView) ajoute les comportements d un Button à ImageView L attribut android:src précise la ressource graphique à utiliser L3 - Info Développement sur Android 31

26 Les «widgets» Les champs de saisie Le widget EditText permet d éditer et de capturer du texte saisi par l utilisateur Il hérite de TextView mais possède des propriétés supplémentaires : android:autotext, android:inputtype, android:singleline,... L3 - Info Développement sur Android 32

27 Les «widgets» Les champs de saisie exemple <?xml version="1.0" encoding="utf-8"?> <EditText xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:singleline="false" /> package com.univangers.l3info.projettest; import android.app.activity; import android.os.bundle; import android.widget.edittext; public class Debut extends Activity { /** Called when the activity is first created. public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); EditText txt = (EditText)findViewById(R.id.champs); txt.settext("un exemple de saisie..."); } } L3 - Info Développement sur Android 33

28 Les «widgets» Les cases à cocher Le widget CheckBox correspond à la boite à cocher Il hérite de CompoundButton qui dérive elle-même de TextView Les méthodes ischecked(), setchecked et toggle permette d interagir avec le widget depuis le code Java Pour servir d écouteur, l activité doit implémenter l interface OnCheckedChangeListener L3 - Info Développement sur Android 34

29 Les «widgets» Les cases à cocher exemple <?xml version="1.0" encoding="utf-8"?> <CheckBox xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:text="case décochée" />... import android.widget.checkbox; import android.widget.compoundbutton; import android.widget.compoundbutton.oncheckedchangelistener; public class Debut extends Activity implements CompoundButton.OnCheckedChangeListener { CheckBox public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); } cb = (CheckBox)findViewById(R.id.caseCoche); cb.setoncheckedchangelistener(this); } public void oncheckedchanged(compoundbutton buttonview, boolean ischecked) { if (ischecked) cb.settext("case cochée"); else cb.settext("case décochée"); } L3 - Info Développement sur Android 35

30 Les «widgets» Les boutons radios Le widget RadioButton implémente le comportement du bouton radio Comme CheckBox, il hérite de CompoundButton et permet d utiliser ischecked(), toggle(),... Les RadioButton sont groupés dans un RadioGroup afin de les lier En y affectant un id, le groupe devient accessible depuis le code Java L3 - Info Développement sur Android 36

31 Les «widgets» Les boutons radios exemple <?xml version="1.0" encoding="utf-8"?> <RadioGroup xmlns:android=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="bleu" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="rouge" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="vert" /> </RadioGroup> L3 - Info Développement sur Android 37

32 Les «conteneurs» Introduction Le «layout manager» Dans quasiment toutes les bibliothèques graphiques, un «layout manager» place les widgets Pour donner les indications de placement, des «conteneurs» sont utilisés La plupart du temps, ils permettent de ranger les widgets en ligne ou dans une grille Android fournit plusieurs conteneurs dont les principaux : LinearLayout : pour le placement séquentiel RelativeLayout : pour le placement relatif TableLayout : pour le placement en grille ScrollView : pour le placement dans une zone avec barres de défilement Comme les widgets, ils peuvent être implémentés dans des ressources XML L3 - Info Développement sur Android 39

33 Les «conteneurs» Le «LinearLayout» Le «LinearLayout» permet de disposer les widgets les uns derrières les autres dans une boite Il faut pour cela indiquer l orientation de la boite (verticale ou horizontale) ex : android:orientation="horizontal" La disposition des widgets dépend de la place occupée par le conteneur Les propriétés android:layout_width (et layout_height) modifient le comportement du widget : wrap_content indique que le widget occupe la place minimale nécessaire match_parent indique que le widget occupe tout l espace disponible de son conteneur Il est possible d indiquer des marges grâce aux propriétés android:layout_margin,... L3 - Info Développement sur Android 40

34 Les «conteneurs» Le «LinearLayout» Poids et alignement Lorsque plusieurs widgets utilisent match_parent des poids peuvent être renseignés dans android:layout_weight Si les poids sont identiques, l espace sera réparti équitablement entre les widgets Si le poids d un widget est deux fois plus important qu un autre, il occupera deux fois plus de place à l écran L alignement des widgets dans un LinearLayout est défini par la propriété android:layout_gravity setgravity() permet de modifier la propriété depuis le code Java Les gravités les plus courantes sont : left, right, center_horizontal et center_vertical L3 - Info Développement sur Android 41

35 Les «conteneurs» Le «LinearLayout» Exemple Il est possible de combiner les LinearLayout Il est possible d utiliser des pourcentages au lieu des poids si : La propriété layout (layout_width ou layout_height) de la dimension libre est à 0dip La somme des pourcentages est égale à 100 L3 - Info Développement sur Android 42

36 Les «conteneurs» <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" > <Button android:text="un" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" /> <Button android:text="deux" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" /> </LinearLayout> </LinearLayout> L3 - Info Développement sur Android 43

37 Les «conteneurs» <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout xmlns:android=" android:orientation="vertical" <LinearLayout xmlns:android=" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent" android:layout_width="match_parent" android:layout_weight="1" > android:layout_height="match_parent" <Button android:text="un" android:layout_weight="1" > android:layout_width="match_parent" <Button android:text="un" android:layout_height="match_parent" android:layout_width="match_parent" android:layout_weight="1" /> android:layout_height="match_parent" <Button android:text="deux" android:layout_weight="1" /> android:layout_width="match_parent" <Button android:text="deux" android:layout_height="match_parent" android:layout_width="match_parent" android:layout_weight="1" /> android:layout_height="match_parent" </LinearLayout> android:layout_weight="2" /> </LinearLayout> </LinearLayout> </LinearLayout> L3 - Info Développement sur Android 44

38 Les «conteneurs» <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout xmlns:android=" android:orientation="vertical" <LinearLayout xmlns:android=" android:layout_width="match_parent" android:orientation="vertical" <LinearLayout android:layout_height="match_parent" xmlns:android=" android:layout_width="match_parent" android:layout_weight="1" android:orientation="vertical" > android:layout_height="match_parent" <Button android:layout_width="match_parent" android:text="un" android:layout_weight="1" > android:layout_width="match_parent" android:layout_height="match_parent" <Button android:text="un" android:layout_height="match_parent" android:layout_weight="1" > android:layout_width="match_parent" <Button android:layout_weight="1" android:text="un" /> android:layout_height="match_parent" <Button android:layout_width="wrap_content" android:text="deux" android:layout_weight="1" /> android:layout_width="match_parent" android:layout_height="match_parent" <Button android:text="deux" android:layout_height="match_parent" android:layout_gravity="left" android:layout_width="match_parent" android:layout_weight="1" /> android:layout_height="match_parent" </LinearLayout> <Button android:text="deux" android:layout_weight="2" /> </LinearLayout> android:layout_width="wrap_content" </LinearLayout> android:layout_height="match_parent" </LinearLayout> android:layout_gravity="center" android:layout_weight="1" /> <Button android:text="trois" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="right" android:layout_weight="1" /> </LinearLayout> </LinearLayout> L3 - Info Développement sur Android 45

39 Les «conteneurs» Le «RelativeLayout» Le placement relatif des widgets Le RelativeLayout permet : De placer un widget relativement au conteneur De placer un widget à gauche, en dessous,... d un autre D aligner des widgets les uns par rapport aux autres Placement relatif au conteneur : android: (layout_alignparenttop, layout_alignparentbottom, layout_alignparentleft et layout_alignparentright) permettent d aligner le haut (resp. bas, gauche et droite) du widget avec celui du conteneur android: (layout_centerhorizontal, layout_centervertical et layout_centerinparent) permettent de centrer horizontalement (resp. verticalement et les deux) le widget dans le conteneur L3 - Info Développement sur Android 46

40 Les «conteneurs» Le «RelativeLayout» Le placement relatif des widgets Placement relatif aux widgets : android: (layout_above, layout_below, layout_toleftof et layout_torightof) permettent de placer un widget au-dessus (resp. en-dessous, à gauche ou à droite) d un autre widget android: (layout_aligntop, layout_alignbottom, layout_alignleft et layout_alignright) permettent d aligner le haut (resp. bas, gauche et droite) du widget avec un autre (indiqué) Il est aussi possible de recouvrir un widget par un autre en utilisant habilement ces propriétés L3 - Info Développement sur Android 47

41 Les «conteneurs» Le «RelativeLayout» Faire référence à d autres widgets Lors du placement relatif, il faut faire référence à d autres widgets dans la ressource XML Comme nous l avons vu, les widgets peuvent avoir des id (les rendants accessibles depuis le code Java) Leur syntaxe est la suivante : android:id="@+id/nomunique" Le symbole "+" est ajouté uniquement la première fois où l id est utilisé <Button android:id="@+id/btnok" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ok" /> <Button android:id="@+id/btncancel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toleftof="@id/btnok" android:layout_aligntop="@id/btnok" android:text="annuler" /> L3 - Info Développement sur Android 48

42 Les «conteneurs» Le «RelativeLayout» Exemple 1 L3 - Info Développement sur Android 49

43 Les «conteneurs» Le «RelativeLayout» Exemple 1, ressource XML <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="url :" android:layout_alignparentleft="true" /> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignparenttop="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ok" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="annuler" /> </RelativeLayout> L3 - Info Développement sur Android 50

44 Les «conteneurs» Le «RelativeLayout» Exemple 2 L3 - Info Développement sur Android 51

45 Les «conteneurs» Le «RelativeLayout» Exemple 2, ressource XML <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="le texte est derrière" android:textsize="80dip" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="bouton devant" android:layout_centerinparent="true" /> </RelativeLayout> L3 - Info Développement sur Android 52

46 Les «conteneurs» Le «TableLayout» Le placement dans une grille Le TableLayout permet de placer les widgets dans les cellules d un tableau Il est forcément associé au conteneur TableRow symbolisant les lignes du tableau Le nombre de colonnes est calculé en fonction de la ligne qui contient le plus de widgets La propriété android:layout_span permet de fusionner des cellules horizontalement La propriété android:layout_column force le widget à être dans la cellule indiquée L3 - Info Développement sur Android 53

47 Les «conteneurs» Le «TableLayout» Influencer le comportement des colonnes Habituellement TableLayout ne contient que des TableRow Il est possible de glisser des widgets entre les lignes déconseillé La propriété android:stretchcolumns permet d étirer la ou les colonnes indiquées dans l espace libre La propriété android:shrinkcolumns permet de réduire la taille des colonnes indiquées en découpant les widgets sur plusieurs lignes La propriété android:collapsecolumns contient la liste des colonnes refermées initialement L3 - Info Développement sur Android 54

48 Les «conteneurs» Le «TableLayout» Exemple <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:stretchcolumns="1" > <TableRow> <TextView android:text="url :" /> <EditText android:layout_span="3" /> </TableRow> <View android:layout_height="2dip" android:background="#ff0000" /> <TableRow> <Button android:layout_column="2" android:text="annuler" /> <Button android:text="ok" /> </TableRow> </TableLayout> L3 - Info Développement sur Android 55

49 Les «conteneurs» Le «ScrollView» Le défilement des widgets Scroller sur une activité est indispensable sur petit écran ScrollView est conteneur permettant à un contenu de défiler Il permet d encapsuler un autre conteneur ne pouvant être affiché intégralement Des bars de défilement apparaissent Depuis Android 1.5, le conteneur HorizontalScrollView permet de faire défiler horizontalement les widgets contenus L3 - Info Développement sur Android 56

50 Les «conteneurs» Le «ScrollView» Exemple <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android=" android:layout_width="match_parent" android:layout_height="wrap_content" > <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:text="haut" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" /> <View android:layout_width="match_parent" android:layout_height="1000dip" android:background="#ff0000" /> <TextView android:text="bas" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" /> </LinearLayout> </ScrollView> L3 - Info Développement sur Android 57

51 Poser une question à l utilisateur Claviers physiques et logiciels Le framework des méthodes de saisie Depuis Android 1.5 le framework IMF 1 a été introduit IMF permet, par exemple, d abstraire la notion de clavier : Si il n y a pas de clavier physique un IME 2 apparaît Il permet aussi de contrôler l IME (contrôle du recouvrement, nature des données... ) La propriété android:inputtype indique la nature des données attendues lors d une saisie : text, number, phone, datetime, date, time Il est aussi possible de contrôler la touche accessoire en bas à droite du clavier La propriété android:imeoptions contrôle la touche accessoire (ex : actionsend, actiondone) 1. Input Method Framework 2. Input Method Editor L3 - Info Développement sur Android 60

52 Poser une question à l utilisateur Contôle du mode de saisie Le framework des méthodes de saisie <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android=" android:layout_width="match_parent" android:layout_height="wrap_content" > <TableLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:stretchcolumns="1" > <TableRow> <TextView android:text="sans paramètre" /> <EditText /> </TableRow> <TableRow> <TextView android:text="adresse " /> <EditText android:inputtype="text text address" android:imeoptions="actionsend" /> </TableRow> <TableRow> <TextView android:text="nombre :" /> <EditText android:inputtype="number numbersigned" /> </TableRow> <TableRow> <TextView android:text="multi-lignes :" /> <EditText android:inputtype="text textmultiline textautocorrect" android:minlines="3" android:gravity="top" /> </TableRow> </TableLayout> </ScrollView> L3 - Info Développement sur Android 61

53 Poser une question à l utilisateur Le framework des méthodes de saisie Aller plus loin avec IMF Il possible de modifier le mode d apparition du clavier en fonction des circonstances : L activité entière peut glisser vers le haut La taille de l activité peut-être modifiée L activité entière peut-être masquée (en mode paysage par exemple) Android choisit par défaut le mode le plus adapté à l activité, mais il peut-être fixé dans le manifest par la propriété android:windowsoftinputmode Il est aussi possible de masquer le clavier depuis le code Java : InputMethodManager mgr=(inputmethodmanager)getsystemservice(input_method_service); mgr.hidesoftinputfromwindow(fld.getwindowtoken(), 0); ou mgr.hidesoftinputfromwindow(fld.getwindowtoken(), InputMethodManager.HIDE_IMPLICIT_ONLY); L3 - Info Développement sur Android 62

54 Poser une question à l utilisateur Widgets de sélection Introduction La saisie d informations sur un smartphone est toujours problématique Les erreurs de frappes peuvent se multiplier... Contrôler l IME est une première étape pour limiter les erreurs La solution la plus adéquate reste de limiter le nombre de réponses possibles Les listes de choix sont donc des widgets indispensables Android permet de lier directement un widget liste à un type abstrait de données adapté Ce sont les adapteurs L3 - Info Développement sur Android 64

55 Poser une question à l utilisateur L adapteur «ArrayAdapter» Widgets de sélection ArrayAdapter permet de lier un tableau à un widget adapté String[] items = { "rouge", "vert", "bleu", "jaune" }; new ArrayAdapter<String>(this, android.r.layout.simple_list_item1, items); ArrayAdapter prend trois paramètres : Un contexte, généralement l activité L identifiant de ressource de la vue à utiliser La liste des éléments Par défaut, ArrayAdapter appelle la méthode tostring() des objets de la liste Il instanciera ensuite la vue avec le résultat Le second paramètre de ArrayAdapter renseigne la vue La valeur android.r.layout.simple_list_item_1 correspond à une vue prédéfinie simple L3 - Info Développement sur Android 65

56 Poser une question à l utilisateur Widgets de sélection La «ListActivity» Utilisation de «ArrayAdapter» Le widget d Android pour les listes est le ListView Toutefois, utiliser une ListActivity est préconisé quand l activité se réduit à une liste La propriété android:choicemode="multiplechoice" permet d obtenir une liste à choix multiples <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:id="@+id/selection" android:layout_width="match_parent" android:layout_height="wrap_content" /> <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="match_parent" android:drawselectorontop="false" /> </LinearLayout> L3 - Info Développement sur Android 66

57 Poser une question à l utilisateur La «ListActivity» Utilisation de «ArrayAdapter» Widgets de sélection package com.univangers.l3info.projettest; import android.app.listactivity; import android.os.bundle; import android.view.view; import android.widget.listview; import android.widget.arrayadapter; import android.widget.textview; public class Debut extends ListActivity { private TextView selection; private static final String[] items = { "rouge", "bleu", "vert", "jaune", "rose" public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); setlistadapter(new ArrayAdapter<String>(this, android.r.layout.simple_list_item_1, items)); selection=(textview)findviewbyid(r.id.selection); } public void onlistitemclick(listview parent, View v, int pos, long id) { selection.settext(items[pos]); } } L3 - Info Développement sur Android 67

58 Poser une question à l utilisateur Widgets de sélection Les listes déroulantes Les listes déroulantes sont implémentées avec le widget Spinner La méthode setadapteur() renseigne l adaptateur à utiliser La méthode setonitemselectedlistener() fournit l écouteur en cas de clic L3 - Info Développement sur Android 68

59 Poser une question à l utilisateur Widgets de sélection <Spinner android:id="@+id/boitederoulante" android:layout_width="match_parent" android:layout_height="wrap_content" android:drawselectorontop="true" /> public class Debut extends Activity implements AdapterView.OnItemSelectedListener { private TextView selection; private static final String[] items = { "rouge", "bleu", "vert", "jaune", "rose" public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); selection=(textview)findviewbyid(r.id.selection); Spinner spin = (Spinner)findViewById(R.id.boitederoulante); spin.setonitemselectedlistener(this); ArrayAdapter<String> aa = new ArrayAdapter<String>(this, android.r.layout.simple_spinner_item, items); aa.setdropdownviewresource(android.r.layout.simple_spinner_dropdown_item); spin.setadapter(aa); } public void onitemselected(adapterview<?> parent, View v, int pos, long id) { selection.settext(items[pos]); } public void onnothingselected(adapterview<?> parent) { selection.settext(""); } } L3 - Info Développement sur Android 69

60 Poser une question à l utilisateur Widgets de sélection L autocomplétion Économie de temps et gain de fiabilité! Le widget AutoCompleteTextView est un mélange de EditText et de Spinner Il hérite de EditText Le texte saisi est utilisé pour présenter les choix possibles restants Un TextWatcher permet de réaliser des actions quand le texte change L3 - Info Développement sur Android 70

61 Poser une question à l utilisateur L autocomplétion Widgets de sélection <AutoCompleteTextView android:id="@+id/editauto" android:layout_width="match_parent" android:layout_height="wrap_content" android:completionthreshold="3" /> public class Debut extends Activity implements TextWatcher { private TextView selection; private AutoCompleteTextView editauto; private static final String[] items = { "rouge", "bleu", "vert", "jaune", "rose" public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); selection=(textview)findviewbyid(r.id.selection); editauto = (AutoCompleteTextView)findViewById(R.id.editAuto); editauto.addtextchangedlistener(this); editauto.setadapter(new ArrayAdapter<String>(this, android.r.layout.simple_dropdown_item_1line, items)); } public void ontextchanged(charsequence s, int start, int before, int count) { selection.settext(editauto.gettext()); } public void beforetextchanged(charsequence s, int start, int count, int after) { } public void aftertextchanged(editable s) { } } L3 - Info Développement sur Android 71

62 Pour aller plus loin... Autres widgets et conteneurs Encore plus de widgets En plus des widgets déjà vus, Android fournit un grand nombre de widgets et conteneurs : saisie des dates, des temps, sélecteurs de fichiers, positionnement absolu... Les listes, vues avant peuvent avoir un rendu complètement personnalisé il est aussi possible d utiliser des onglets grâce au conteneur TabHost et l activité TabActivity Toutefois, la philosophie d Android est de limiter au maximum leur utilisation Il est aussi possible d utiliser des bases de données SQL, de faire apparaître des pop-ups et même d intégrer un navigateur web. L3 - Info Développement sur Android 74

63 Pour aller plus loin... Autres widgets et conteneurs Les tiroirs : «SlidingDrawer» Le SlidingDrawer peut passer d ouvert à fermé Comme il se superpose à l affichage, il ne peut se trouver que dans un RelativeLayout ou un FrameLayout Un FrameLayout est dédié à la supperposition de widgets Il est possible depuis le code Java, de l ouvrir, le fermer, le bloquer,... L3 - Info Développement sur Android 75

64 Pour aller plus loin... Les tiroirs Exemple Autres widgets et conteneurs <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" > <SlidingDrawer android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="ouvert!" /> </SlidingDrawer> </FrameLayout> La ressource affichée dans le ImageView doit être fournie L3 - Info Développement sur Android 76

65 Pour aller plus loin... Autres widgets et conteneurs Intégrer le navigateur «webkit» Le widget WebView permet d intégrer un navigateur web dans l activité Il faut modifier les permissions de sécurité en conséquence Il dispose d un grand nombre de fonctionnalités (JavaScript, navigation arrière/avant,... ) Il possible de charger des URLs mais également du code HTML par l appel à loaddata() L3 - Info Développement sur Android 77

66 Pour aller plus loin... Intégrer le navigateur «webkit» Exemple Autres widgets et conteneurs AndroidManifest.xml <uses-permission android:name="android.permission.internet" /> <?xml version="1.0" encoding="utf-8"?> <WebView xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" /> package com.univangers.l3info.projettest; import android.app.activity; import android.os.bundle; import android.webkit.webview; public class Debut extends Activity { public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); WebView ww=(webview)findviewbyid(r.id.navigateur); ww.loadurl(" } } L3 - Info Développement sur Android 78

67 Pour aller plus loin... Menus et «pop-ups» Les menus Comme dans tout type d application, il est possible d ajouter des menus Il peuvent s ouvrir soit : Lors de l appui sur la touche menu (menu d options) Lors d un appui long sur un widget (menu contextuel) Ils peuvent apparaître en mode icône... Seuls quelques éléments sont visibles, le texte Plus peut apparaitre... ou en mode étendu Il se constituent/remplissent depuis le code Java L3 - Info Développement sur Android 80

68 Pour aller plus loin... Les menus Les menus d options Menus et «pop-ups» La méthode oncreateoptionsmenu() de l activité concernée doit être redéfinie Les items du menu sont rajoutés par l appel à méthode add() du menu Il prend en compte les paramètres suivants : Un identifiant de groupe (NONE normalement) Possibilité de créer des items exclusifs (radio) Un identifiant de choix pour identifier le choix lors du rappel La méthode onoptionsitemselected() effectue le rappel Un identifiant d ordre (NONE le plus souvent) Le libellé de l item Il est possible de rendre des options «checkable» par l appel à MenuItem#SetCheckable Il est possible de créer des sous-menus en appelant addsubmenu() L3 - Info Développement sur Android 81

69 Pour aller plus loin... Menus et «pop-ups» Les menus Les menus contextuels Les menus contextuels fonctionnent comme les menus d options La méthode registerforcontextmenu() associe un widget à un menu contextuel La méthode oncreatecontextmenu() doit être redéfinie pour construire le menu oncreatecontextmenu() est appelé à chaque affichage du menu contextuel getmenuinfo() est utilisé pour obtenir le widget qui a déclenché le menu L3 - Info Développement sur Android 82

70 Pour aller plus loin... Les menus Exemple Menus et «pop-ups» public class Debut extends ListActivity { public static final int MENU_ADD = Menu.FIRST+1; public static final int MENU_RESET = public void oncreate(bundle icicle) { super.oncreate(icicle); /* Initialisation de la liste d éléments */ public boolean oncreateoptionsmenu(menu menu) { menu.add(menu.none, MENU_ADD, Menu.NONE, "Ajouter").setIcon(R.drawable.ic_menu_add); menu.add(menu.none, MENU_RESET, Menu.NONE, "Réinitialiser").setIcon(R.drawable.ic_menu_refresh); return(super.oncreateoptionsmenu(menu)); public boolean onoptionsitemselected(menuitem item) { switch (item.getitemid()) { case MENU_ADD: return(true); case MENU_RESET: initadapter(); return(true); } return(super.onoptionsitemselected(item)); } L3 - Info Développement sur Android 83

71 Pour aller plus loin... Les menus Exemple Menus et public void oncreate(bundle icicle) { super.oncreate(icicle); /* Initialisation de la liste d éléments */ registerforcontextmenu(getlistview()); public void oncreatecontextmenu(contextmenu menu, View v, ContextMenu.ContextMenuInfo menuinfo) { menu.add(menu.none, MENU_CAP, Menu.NONE, "Capitaliser"); menu.add(menu.none, MENU_REMOVE, Menu.NONE, "Supprimer"); public boolean oncontextitemselected(menuitem item) { AdapterView.AdapterContextMenuInfo info= (AdapterView.AdapterContextMenuInfo)item.getMenuInfo(); ArrayAdapter<String> aa= (ArrayAdapter<String>)getListAdapter(); switch (item.getitemid()) { case MENU_CAP: String item=items.get(info.position);... return(true); case MENU_REMOVE: aa.remove(items.get(info.position)); return(true); } return(super.oncontextitemselected(item)); L3 - Info Développement sur Android 84

72 Pour aller plus loin... Menus et «pop-ups» Les «pop-ups» Les «toasts» et les «alertes»! Pour informer l utilisateur, il est nécessaire de lui afficher des messages Le «toast» est un message qui ne reste affiché que pendant un certain laps de temps Il ne modifie pas le focus de l activité Pas moyen de savoir si l utilisateur l a lu Un toast est émis en appelant la méthode statique maketext() de la classe Toast Les «alertes» sont déclenchées en instanciant une boîte de dialogue modale affichée à l écran Elle prend le focus L utilisateur doit valider (donner une réponse) pour la fermer Une alerte est créée par instanciation de la classe AlertDialog L3 - Info Développement sur Android 85

73 Pour aller plus loin... Les «pop-ups» Exemple Menus et «pop-ups» public class Debut extends Activity public void oncreate(bundle icicle) { super.oncreate(icicle); setcontentview(r.layout.main); Toast.makeText(Debut.this, "Ça va démarrer!", Toast.LENGTH_SHORT).show(); } } new AlertDialog.Builder(this).setTitle("Une boite!").setmessage("bla bla bla.").setcancelable(false).setpositivebutton("quitter", new DialogInterface.OnClickListener() { public void onclick(dialoginterface dialog,int id) { Debut.this.finish(); } }).setnegativebutton("rester", new DialogInterface.OnClickListener() { public void onclick(dialoginterface dialog,int id) { dialog.cancel(); } }).show(); L3 - Info Développement sur Android 86

74 Le système reste le seul maître à bord! Ça s en va et ça revient... Une gestion spécifique à un matériel aux ressources limités Sur un PC l OS 3 peut tuer des processus Toutefois, on considère qu une tâche ne peut se terminer de manière inopinée Sur un smartphone, les ressources et notamment la mémoire sont plus limitées Des activités peuvent être tuées pour permettre à d autres de s exécuter Certaines doivent mourir pour que d autres vivent Sur Android il ne faut pas supposer que l application ira jusqu à son terme! 3. Operating System L3 - Info Développement sur Android 90

75 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Une activité est toujours dans l un des quatre états suivants : Active : elle s execute au premier plan En pause : l activité est visible mais inacessible (une notification ou un message apparaît devant) Stoppée : elle est cachée par une autre activité Morte : elle n a pas été lancée ou a été tuée Android fournit des méthodes appelées lors de la transition d un état à un autre Elles sont implémentées dans la classe Activity et sont à redéfinir dans les sous-classes Certaines transitions font appel successivement à plusieurs de ces méthodes, la documentation doit être lue attentivement! L3 - Info Développement sur Android 91

76 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Cycle de vie Pour chaque méthode de transition redéfinie, il faut rappeler la méthode de la superclasse! OnCreate() Appelée : Lors du lancement de l activité (avec NULL comme paramètre) Lors du redémarrage de l activité (après un «kill»), avec un «Bundle» comme argument Également après une rotation L3 - Info Développement sur Android 92

77 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Cycle de vie OnDestroy() Libérations des ressources : Lors de l appel à finish() Lorsque qu elle est tuée OnStart(),OnRestart() et OnStop() onstart() est appelé lors du passage au premier plan onrestart() est appelé uniquement lorsque l activité a été stoppée et redémarre onstop() est appelé lorsque l activité va être stoppée L3 - Info Développement sur Android 93

78 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Cycle de vie OnResume() Est appelé juste avant que l activité passe au premier plan Lors de son lancement Lors de son retour après avoir été rendue inaccessible Après la fermeture d une notification ouverte par le système C est le bon endroit pour reconstruire l interface! L3 - Info Développement sur Android 94

79 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Cycle de vie OnPause() Est appelé juste avant que l activité quitte le premier plan Elle permet de libérer les ressources exclusives (threads, appareil photo) et ce qui a été fait dans OnResume() Lorsqu une activité est en pause, Android peut la tuer à tout moment L3 - Info Développement sur Android 95

80 Le système reste le seul maître à bord! Ça s en va et ça revient... États d une activité Sauvegarde de l état d une instance Pour rendre transparente toute cette gestion, Android permet de sauvegarder et restaurer l état d une instance La méthode onsaveinstancestate() fournit un Bundle dans lequel une activité peut sauver des données onrestoreinstancestate() et oncreate() permettent de récupérer le Bundle réalisé onsaveinstancestate() est appelé régulièrement par Android : Il faut donc que son exécution soit rapide et efficace onsaveinstancestate() possède une version prédéfinie basée sur les ID des widgets Il est possible de la personnalisée complètement L3 - Info Développement sur Android 96

81 Le système reste le seul maître à bord! La rotation des écrans Fonctionnement de la rotation La majorité des smartphones peuvent passer du mode portrait au mode paysage Lors de l ouverture d un clavier physique Lors de la détection d un mouvement défini (grâce à des accéléromètres) Lors d un changement d orientation, Android supprime et recrée toutes les activités Il est possible d adapter les activités pour bien réagir face à la rotation L3 - Info Développement sur Android 98

82 Le système reste le seul maître à bord! La rotation des écrans Mise en œuvre de la rotation Par défaut, il n y a rien à faire, l activité gère elle même la rotation L émulateur peut effectuer une rotation en pressant la combinaison «Ctrl+F11» Un layout différent pour le mode paysage peut être défini en utilisant : res/layout/ et res/layout-land/ Il est possible de bloquer la rotation d une activité en modifiant le manifest : <activity android:name="debut" android:label="@string/app_name" android:screenorientation="portrait" > L3 - Info Développement sur Android 99

Programmation des applications mobiles avec Android. 1 Inspiré du cours de Olivier Le Goaer

Programmation des applications mobiles avec Android. 1 Inspiré du cours de Olivier Le Goaer Programmation des applications mobiles avec Android 1 Inspiré du cours de Olivier Le Goaer 2 OS mobile : outils de développement D après le cours de Olivier Le Goaer 3 Plateforme de développement MobileApp

Plus en détail

TP SIN Programmation sur androïde Support : eclipse

TP SIN Programmation sur androïde Support : eclipse TP SIN Programmation sur androïde Support : eclipse Support : Smartphone sur androïde Pré requis (l élève doit savoir): Savoir utiliser un ordinateur Savoir utiliser un Smartphone Programme Objectif terminale

Plus en détail

TP au menu «UI ANDROID»

TP au menu «UI ANDROID» TP au menu «UI ANDROID» Pré-requis & Installation ( du couvert) soit installer en natif sur vos postes (!!! ATTENTION!!! FromScratch 1,1 Go à télécharger ) JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html

Plus en détail

Android 4 Les fondamentaux du développement d'applications Java

Android 4 Les fondamentaux du développement d'applications Java La plateforme Android 1. Présentation 13 2. Historique 14 3. Google Play 15 3.1 Création d'un compte développeur 16 3.2 Publication d'une application 16 3.3 Suivi et mise à jour d'une application 18 Environnement

Plus en détail

Outils, langage et approche Android Une introduction. Nicolas Stouls nicolas.stouls@insa lyon.fr

Outils, langage et approche Android Une introduction. Nicolas Stouls nicolas.stouls@insa lyon.fr Outils, langage et approche Android Une introduction Nicolas Stouls nicolas.stouls@insa lyon.fr Webographie La bible contenant «tout» : http://developer.android.com/index.html Les supports cette intervention

Plus en détail

Les fondamentaux du développement d applications Java

Les fondamentaux du développement d applications Java Android 5 Les fondamentaux du développement d applications Java Nazim BENBOURAHLA Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr Saisissez

Plus en détail

1.3 Gestion d'une application

1.3 Gestion d'une application 1.3 Gestion d'une application 1. Un premier projet... Il est temps maintenant d'écrire la véritable première application Android avec l'inévitable affichage du mot bonjour, ce qui évidemment pour un développement

Plus en détail

Warren PAULUS. Android SDK et Android x86

Warren PAULUS. Android SDK et Android x86 Android SDK et Android x86 2010/2011 Voici un petit tutoriel pour installer Android de façon à ce qu il soit compatible avec NetBeans et Eclipse, ainsi que l utilisation d Android x86. Ce tutoriel a été

Plus en détail

De Java à Android version 0.1

De Java à Android version 0.1 De Java à Android version 0.1 David Roche De Java à Andoid 1 Ce document est publié sous licence Creative Commons Vous êtes libres : de reproduire, distribuer et communiquer cette création au public de

Plus en détail

Table des matières. Partie I Concepts de base... 1. Préface... VII

Table des matières. Partie I Concepts de base... 1. Préface... VII Table des matières Préface... VII Partie I Concepts de base... 1 1. Tour d horizon... 3 Avantages et inconvénients de la programmation des smartphones... 3 Contenu d un programme Android... 4 Fonctionnalités

Plus en détail

www.elektor.fr/android SOMMAIRE

www.elektor.fr/android SOMMAIRE www.elektor.fr/android Android Apprendre à programmer des applis Environnement de développement Eclipse Programmation orientée objet en JAVA Auteur : Stephan Schwark Éditeur : Elektor ISBN : 978-2-86661-187-3

Plus en détail

Encore plus de widgets et de conteneurs

Encore plus de widgets et de conteneurs 14 Encore plus de widgets et de conteneurs Nous avons déjà présenté un certain nombre de widgets et de conteneurs, et ce chapitre sera le dernier qui leur sera exclusivement consacré : il présente plusieurs

Plus en détail

Créer des applications Android

Créer des applications Android Créer des applications Android Auteurs : Philippe Lacomme, Raksmey Phan Les outils nécessaires sont : - Android SDK - Eclipse - Le plugin ADT de Eclipse Plan (ceci n est pas un cours) Outils: Préparation

Plus en détail

Chapitre 1 Retour en arrière

Chapitre 1 Retour en arrière Chapitre 1 : Retour en arrière 1 Chapitre 1 Retour en arrière Chapitre 1 : Retour en arrière 2 1. Difficultés de développer pour les systèmes embarqués Quelques contraintes à prendre en compte : - Mémoire:

Plus en détail

TP2 : Client d une BDD SqlServer

TP2 : Client d une BDD SqlServer TP2 : Client d une BDD SqlServer Objectifs : utiliser la barre de menu, utiliser les préférences d application (settings) ou (options), gérer la persistance des données, utiliser la bibliothèque jtds:jdbc

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

Programmation mobile avec Android

Programmation mobile avec Android Programmation mobile avec Android Pierre Nerzic - pierre.nerzic@univ-rennes1.fr février-mars 2015 Abstract Il s agit des transparents du cours mis sous une forme plus facilement imprimable et lisible.

Plus en détail

Programmation Android L3 informatique

Programmation Android L3 informatique Programmation Android L3 informatique Étienne Payet Département de mathématiques et d informatique Ces transparents sont mis à disposition selon les termes de la Licence Creative Commons Paternité - Pas

Plus en détail

Tutorial pour une application simple

Tutorial pour une application simple ANDROID & ECLIPSE Tutorial pour une application simple 1. Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

TD/TP 1 Introduction au SDK d Android

TD/TP 1 Introduction au SDK d Android TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

Programmation Mobile Android Master CCI

Programmation Mobile Android Master CCI Programmation Mobile Android Master CCI Bertrand Estellon Aix-Marseille Université March 23, 2015 Bertrand Estellon (AMU) Android Master CCI March 23, 2015 1 / 266 Organisation de l UE Objectifs du cours

Plus en détail

Android. Programmation. De la conception au déploiement avec le SDK Google Android 2. Damien Guignard Julien Chable Emmanuel Robles

Android. Programmation. De la conception au déploiement avec le SDK Google Android 2. Damien Guignard Julien Chable Emmanuel Robles Programmation Android De la conception au déploiement avec le SDK Google Android 2 Damien Guignard Julien Chable Emmanuel Robles Avec la contribution de Nicolas Sorel et Vanessa Conchodon Groupe Eyrolles,

Plus en détail

Développement Android. J.-F. Couchot

Développement Android. J.-F. Couchot Développement Android J.-F. Couchot 12 novembre 2012 Table des matières 1 Introduction à l OS embarqué Android 3 I Composants principaux d une application................................ 3 I.1 Une activité............................................

Plus en détail

Gestion des différentes tailles d écran

Gestion des différentes tailles d écran 25 Gestion des différentes tailles d écran Les écrans des terminaux Android, qui sont apparus sur le marché l année qui a suivi l apparition d Android 1.0, avaient tous la même résolution (HVGA, 320 480

Plus en détail

Développement d'applications pour Android. M. Dalmau IUT de Bayonne Pays Basque

Développement d'applications pour Android. M. Dalmau IUT de Bayonne Pays Basque Développement d'applications pour Android M. Dalmau IUT de Bayonne Pays Basque Positionnement d Android L iphone (Apple) Nokia (Symbian OS) Window Mobile (Microsoft) BlackBerry Palm (WebOS) Google (Android)

Plus en détail

Tutoriel Android. Pour démarrer la programmation d'applications Android

Tutoriel Android. Pour démarrer la programmation d'applications Android Tutoriel Android Pour démarrer la programmation d'applications Android Remarque préalable Comme il est impossible de traiter tous les aspects d'android, seulement quelques uns seront présentés. De plus

Plus en détail

Plate formes mobiles. Utilisation. Contexte 9/29/2010 IFC 2. Deux utilisations assez distinctes :

Plate formes mobiles. Utilisation. Contexte 9/29/2010 IFC 2. Deux utilisations assez distinctes : Plate formes mobiles IFC 2 Markus Jaton Utilisation Deux utilisations assez distinctes : Téléphones évolués (Nokia, Motorola) Smartphones (Apple,, Windows) La téléphonie est en stagnation, alors que les

Plus en détail

- TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers

- TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers - TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers vendredi 22 février 2013 Installation : Pour programmer des applications Android, il faut tout d abord veiller à disposer

Plus en détail

Optimiser pour les appareils mobiles

Optimiser pour les appareils mobiles chapitre 6 Optimiser pour les appareils mobiles 6.1 Créer un site adapté aux terminaux mobiles avec jquery Mobile... 217 6.2 Transformer son site mobile en application native grâce à PhoneGap:Build...

Plus en détail

Android 101. Rémi Forax

Android 101. Rémi Forax Android 101 Rémi Forax OS/smartphone dans le monde Historique Octobre 2003 : conception d'un OS mobile par Android Inc. (co-fondé par Andy Rubin) Août 2005 : rachat d'android Inc par Google Novembre 2007

Plus en détail

Introduction ANDROID

Introduction ANDROID Introduction ANDROID 1 Un monde ouvert Première plateforme ouverte pour appareils mobiles.les applications natives et tierces utilisent les mêmes API. Un système d exploitation open source libre pour appareils

Plus en détail

Tutoriel Android - TP de prise en main

Tutoriel Android - TP de prise en main Tutoriel Android - TP de prise en main To cite this version:. Tutoriel Android - TP de prise en main. École d ingénieur. France. 2014, pp.51. HAL Id: cel-01082588 https://hal.archives-ouvertes.fr/cel-01082588v2

Plus en détail

Projet Android (LI260) Cours 2

Projet Android (LI260) Cours 2 Projet Android (LI260) Cours 2 Nicolas Baskiotis Université Pierre et Marie Curie (UPMC) Laboratoire d Informatique de Paris 6 (LIP6) S2-2013/2014 Plan Les ressources Debug Communication entre activités

Plus en détail

Développement tablette Android. SophiaConf2011 Par Arnaud FARINE

Développement tablette Android. SophiaConf2011 Par Arnaud FARINE Développement tablette Android SophiaConf2011 Par Arnaud FARINE Parts de marché Android en 2011 1er OS vendu aux EU fin 2010 24% des smartphones en France (35% ios, 11% Blackberry) 3,6 millions de smartphones

Plus en détail

Béatrice Bertrand CDDP de l Eure. Béatrice Bertrand CDDP de l'eure

Béatrice Bertrand CDDP de l Eure. Béatrice Bertrand CDDP de l'eure CDDP de l Eure Android (prononcé androïde) est un système d'exploitation fondé sur un noyau Linux, en open source, pour Smartphones, PDA (Personal Digital Assistant) et terminaux mobiles. Il comporte une

Plus en détail

Point sur les solutions de développement d apps pour les périphériques mobiles

Point sur les solutions de développement d apps pour les périphériques mobiles Point sur les solutions de développement d apps pour les périphériques mobiles Par Hugues MEUNIER 1. INTRODUCTION a. Une notion importante : le responsive web design Nous sommes en train de vivre une nouvelle

Plus en détail

Education Delivery Intelligent Tool

Education Delivery Intelligent Tool Education Delivery Intelligent Tool Projet AMO2 Maxence RAOUX Joachim SEGALA RICM 4 Avril 2012 Sommaire I. Presentation du projet... 2 1. Contexte... 2 2. Demande... 2 3. Spécifications... 2 II. Guide

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

Plus en détail

APPLICATIONS JAVA. 1. Android. Développement d'activités Java sous Android. Android Partie I. L'architecture du système Android. Application Android

APPLICATIONS JAVA. 1. Android. Développement d'activités Java sous Android. Android Partie I. L'architecture du système Android. Application Android Applications Java sous Android IvMad, 2011-2014 2 APPLICATIONS JAVA Android Partie I 1. Android Développement d'activités Java sous Android L'objectif principal de ce cours est de découvrir la programmation

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

WINDEV MOBILE. ios SMARTPHONE SUPPORT: IOS, ANDROID, WINDOWS PHONE 8.

WINDEV MOBILE. ios SMARTPHONE SUPPORT: IOS, ANDROID, WINDOWS PHONE 8. WINDEV MOBILE ios SMARTPHONE SUPPORT: IOS, ANDROID, WINDOWS PHONE 8. WINDOWS Mobile permet de créer des applications pour les smartphones, les tablettes et les terminaux mobiles. Les applications sont

Plus en détail

Module Architecture des systèmes mobiles : Android première partie - 2015 Didier FERMENT - UPJV

Module Architecture des systèmes mobiles : Android première partie - 2015 Didier FERMENT - UPJV Module Architecture des systèmes mobiles : Android première partie - 2015 Didier FERMENT - UPJV Plan 1ére partie : Introduction Première Activité : layout classe Activity manifeste développement avec un

Plus en détail

Génie Logiciel et Interaction Homme-Machine PROJET UCAMPUS

Génie Logiciel et Interaction Homme-Machine PROJET UCAMPUS Master E-Services Génie Logiciel et Interaction Homme-Machine PROJET UCAMPUS 2010-2011 SPADI Julien VAN HOEYMISSEN Thomas TABLE DES MATIERES 1. L APPLICATION... 2 1.1 Objectif Principal... 2 1.2 Fonctionnalités

Plus en détail

Épisode 2 : Les outils de développement Alain Menu édition 2.1, septembre 2013

Épisode 2 : Les outils de développement Alain Menu édition 2.1, septembre 2013 Département IRIS Épisode 2 : Les outils de développement Alain Menu édition 2.1, septembre 2013 Objectifs : Mise en œuvre d'une chaine de développement pour cibles Android. Table des matières 2.1.Mise

Plus en détail

Android. Présentation d Android. Florent Garin http://www.docdoku.com http://twitter.com/docdoku

Android. Présentation d Android. Florent Garin http://www.docdoku.com http://twitter.com/docdoku Android Présentation d Android 20 novembre 2010 Florent Garin http://www.docdoku.com http://twitter.com/docdoku Florent Garin Co-fondateur de DocDoku Société innovante IT http://www.docdoku.com Co-fondateur

Plus en détail

Développement sous Android

Développement sous Android Développement sous Android Chapitres traités Les fournisseurs de contenu (Content Provider) Pour cette dernière étude de l'environnement Android, nous allons en profiter pour découvrir plein de fonctionnalités

Plus en détail

MANUEL UTILISATEUR. Application 4trip

MANUEL UTILISATEUR. Application 4trip * MANUEL UTILISATEUR Application 4trip Table des matières 1. Introduction... 1 1.1. Description globale du produit... 1 1.2. Description de la finalité du manuel... 1 2. Manuel d utilisation... 2 2.1.

Plus en détail

Environnements de développement (intégrés)

Environnements de développement (intégrés) Environnements de développement (intégrés) Introduction aux EDI, la plateforme Eclipse Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

Plus en détail

République Algérienne Démocratique et Populaire Université Abou Bakr Belkaid Tlemcen Faculté des Sciences Département d Informatique

République Algérienne Démocratique et Populaire Université Abou Bakr Belkaid Tlemcen Faculté des Sciences Département d Informatique République Algérienne Démocratique et Populaire Université Abou Bakr Belkaid Tlemcen Faculté des Sciences Département d Informatique Mémoire de fin d études pour l obtention du diplôme de Licence en Informatique

Plus en détail

Développement sous Android

Développement sous Android Développement sous Android Chapitres traités Architecture générale d'android Android est une plateforme ouverte pour le développement de mobiles (smartphones). C'est la première plateforme pour appareils

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

BUREAU VIRTUEL. Utilisation de l application sur ipad. Guide utilisateur. Sciences Po Utilisation du bureau virtuel sur ipad 1 / 6

BUREAU VIRTUEL. Utilisation de l application sur ipad. Guide utilisateur. Sciences Po Utilisation du bureau virtuel sur ipad 1 / 6 BUREAU VIRTUEL Utilisation de l application sur ipad Guide utilisateur Sciences Po Utilisation du bureau virtuel sur ipad 1 / 6 Utilisation du bureau virtuel sur ipad Table des matières PREAMBULE...2 QU

Plus en détail

Eclipse atelier Java

Eclipse atelier Java Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

Plus en détail

Manuel logiciel client for Android

Manuel logiciel client for Android 1 Manuel logiciel client for Android 2 Copyright Systancia 2012 Tous droits réservés Les informations fournies dans le présent document sont fournies à titre d information, et de ce fait ne font l objet

Plus en détail

Android Publish/Subscribe, GCM, Google Cloud Messaging : une introduction

Android Publish/Subscribe, GCM, Google Cloud Messaging : une introduction Android Publish/Subscribe, GCM, Google Cloud Messaging : une introduction jean-michel Douin, douin au cnam point fr version : 8 Décembre 2014 Notes de cours 1 Sommaire Le socle, les fondements Le patron

Plus en détail

Édu-groupe - Version 4.3

Édu-groupe - Version 4.3 Édu-groupe - Version 4.3 Guide de l utilisateur Gestion des fichiers Société GRICS, Équipe Évaluation Août 2012 2 CONSIDÉRATIONS GÉNÉRALES A. Importante mise en garde concernant les types de fureteur Les

Plus en détail

Terminaux Mobiles Communicants

Terminaux Mobiles Communicants Terminaux Mobiles Communicants Programmation Android P-F. Bonnefoi Version du 4 avril 2011 Table des matières 1 Open Handset Alliance.............................................. 5 2 Android : matériel

Plus en détail

Votre premier projet Android

Votre premier projet Android 3 Votre premier projet Android Maintenant que le SDK Android est installé, il est temps de créer votre premier projet. La bonne nouvelle est qu il n exige aucune ligne de code les outils Android créent

Plus en détail

Synchroniser ses photos

Synchroniser ses photos Synchroniser Avec l'arrivée des smartphones et tablettes équipés de fonctions «appareils photos», nous réalisons de plus en plus de photos avec ceux-ci. Soucis, la mémoire de ces outils n'est pas aussi

Plus en détail

Android en action. Abdelkader Lahmadi Université de Lorraine - 2013

Android en action. Abdelkader Lahmadi Université de Lorraine - 2013 Android en action Abdelkader Lahmadi Université de Lorraine - 2013 Plan La boîte à outils JDK SDK Android Eclipse Plugin Android pour Eclipse Architecture et composants La main à la pâte Hello Android

Plus en détail

Guide de l utilisateur Mikogo Version Windows

Guide de l utilisateur Mikogo Version Windows Guide de l utilisateur Mikogo Version Windows Table des matières Création d un compte utilisateur 3 Téléchargement et installation 4 Démarrer une session 4 Joindre une session 5 Fonctionnalités 6 Liste

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa [Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY Organisme ou entreprise Validation du document Nom Date Visa Amel LIMAM Organisme ou entreprise Approbation

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Freeway 7. Nouvelles fonctionnalités

Freeway 7. Nouvelles fonctionnalités ! Freeway 7 Nouvelles fonctionnalités À propos de ce guide... 3 Nouvelles fonctionnalités en un coup d'oeil... 3 À propos de la conception d'un site web réactif... 3 Travailler avec les pages pour créer

Plus en détail

< Atelier 1 /> Démarrer une application web

< Atelier 1 /> Démarrer une application web MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE

Plus en détail

Table des matières Introduction... 1 1. Démarrage... 8 2. Les composants graphiques... 26

Table des matières Introduction... 1 1. Démarrage... 8 2. Les composants graphiques... 26 Table des matières À propos de l'auteur... x Préface... xi Avant-propos... xiv 1. Public visé et prérequis... xiv 2. Sources des exemples... xv 3. Accès aux vidéos... xv 4. URL raccourcies... xv 5. Remerciements...

Plus en détail

Design adaptatif. Guide de l utilisateur VIENNA LONDON MUNICH BERLIN PARIS HONG KONG MOSCOW ISTANBUL BEIJING ZURICH

Design adaptatif. Guide de l utilisateur VIENNA LONDON MUNICH BERLIN PARIS HONG KONG MOSCOW ISTANBUL BEIJING ZURICH Design adaptatif Guide de l utilisateur VIENNA LONDON MUNICH BERLIN PARIS HONG KONG MOSCOW ISTANBUL BEIJING ZURICH Contenu Définition... 3 Avantages... 3 Fonctionnalités... 5 Modèle de Design mobile...

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

LES TABLETTES : GÉNÉRALITÉS

LES TABLETTES : GÉNÉRALITÉS LES TABLETTES : GÉNÉRALITÉS Fonctionnement Qu est-ce qu une tablette tactile? Une tablette tactile est un appareil doté d'un écran qui permet d'interagir simplement en touchant l'écran ou à l'aide d'un

Plus en détail

Manuel d utilisation pour la plateforme BeExcellent MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT

Manuel d utilisation pour la plateforme BeExcellent MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT Manuel d utilisation pour la plateforme MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT Manuel d utilisation pour la plateforme 13 14 Manuel d utilisation pour la plateforme Qu est-ce que 1. Qu est-ce

Plus en détail

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de Guide de l utilisateur Faites connaissance avec la nouvelle plateforme interactive de Chenelière Éducation est fière de vous présenter sa nouvelle plateforme i+ Interactif. Conçue selon vos besoins, notre

Plus en détail

Manuel de System Monitor

Manuel de System Monitor Chris Schlaeger John Tapsell Chris Schlaeger Tobias Koenig Traduction française : Yves Dessertine Traduction française : Philippe Guilbert Traduction française : Robin Guitton Relecture de la documentation

Plus en détail

Guide d utilisation. Version 1.1

Guide d utilisation. Version 1.1 Guide d utilisation Version 1.1 Guide d utilisation Version 1.1 OBJECTIF LUNE Inc. 2030 boulevard Pie-IX, bureau 500 Montréal (QC) Canada H1V 2C8 +1 514-875-5863 sales@ca.objectiflune.com http://captureonthego.objectiflune.com

Plus en détail

Iphone vs. Android. Mardi 17 Novembre 2009 Paris, la Défense. Xavier PARADON, Directeur Technique Valtech Training xavier.paradon@valtech-training.

Iphone vs. Android. Mardi 17 Novembre 2009 Paris, la Défense. Xavier PARADON, Directeur Technique Valtech Training xavier.paradon@valtech-training. Mardi 17 Novembre 2009 Paris, la Défense Iphone vs. Android Xavier PARADON, Directeur Technique Valtech Training xavier.paradon@valtech-training.fr Anthony DAHANNE, Consultant Valtech Technology Consulting

Plus en détail

Tutoriel code::blocks

Tutoriel code::blocks Tutoriel code::blocks E. Lunéville 2006 Le logiciel code::blocks fait partie des logiciels de type EDI (Environnement de Développement Intégré, IDE en anglais) pour le langage C++. Il est multiplateforme

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

Documentation Liste des changements apportés

Documentation Liste des changements apportés Version 4.1.000 Documentation Liste des changements apportés C2 Innovations 2010 Table des matières À LA VERSION 4.1... 4 NOUVEAU PRE REQUIS POUR L INSTALLATION DE C2... 4 FERMER LA SESSION D UN UTILISATEUR

Plus en détail

Table des matières ENVIRONNEMENT

Table des matières ENVIRONNEMENT ENVIRONNEMENT Présentation de Windows 7.................13 Démarrer Windows 7......................15 Quitter.................................15 Les fenêtres..............................16 Généralités............................17

Plus en détail

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières Utiliser Dev-C++ Voici quelques explications sur l utilisation de Dev-C++, un excellent environnement de développement en C et C++ pour Windows qu on peut télécharger librement depuis le site www.bloodshed.net

Plus en détail

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP Vue d ensemble du basculement DHCP Dans Windows Server 2008 R2, il existe deux options à haute disponibilité dans le cadre du déploiement du serveur DHCP. Chacune de ces options est liée à certains défis.

Plus en détail

Guide de prise en main Windows 8

Guide de prise en main Windows 8 Guide de prise en main Windows 8 Découvrez le nouveau Windows Premiers pas La barre d icônes Commandes Applications Bureau Zoom sémantique Dernière application utilisée Fermer une application Défilement

Plus en détail

CTIconnect PRO. Guide Rapide

CTIconnect PRO. Guide Rapide CTIconnect PRO Guide Rapide Version 01.02.2013 CTIconnect PRO est une application de communication permettant aux utilisateurs du système de voir le statut de leurs collègues et de les contacter en 1 clic

Plus en détail

Présentation du Framework BootstrapTwitter

Présentation du Framework BootstrapTwitter COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...

Plus en détail

www.netexplorer.fr support@netexplorer.fr

www.netexplorer.fr support@netexplorer.fr www.netexplorer.fr 0825 590 144 support@netexplorer.fr Sommaire L interface NetExplorer... 3 Partie utilisateur... 4 Envoyer des documents sur la plateforme (déposer des documents)... 4 Télécharger des

Plus en détail

Manuel d utilisation du site web de l ONRN

Manuel d utilisation du site web de l ONRN Manuel d utilisation du site web de l ONRN Introduction Le but premier de ce document est d expliquer comment contribuer sur le site ONRN. Le site ONRN est un site dont le contenu est géré par un outil

Plus en détail

Table des matières. Module tablette

Table des matières. Module tablette Module tablette Table des matières LA TABLETTE... 1. GÉNÉRALITÉS... 2 Fonctionnement... 2 Différents systèmes... 4 Le clavier... 6 gestes de base... 7 Paramétrages... 9 2. EN PRATIQUE... 10 Installer une

Plus en détail

Développement d applications professionnelles avec Android 2

Développement d applications professionnelles avec Android 2 Développement d applications professionnelles avec Android 2 Reto Meier Traduit par Dalil Djidel, avec la contribution technique d Arnaud Farine Pearson Education France a apporté le plus grand soin à

Plus en détail

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies

Plus en détail

Utilisation de l éditeur.

Utilisation de l éditeur. Utilisation de l éditeur. Préambule...2 Configuration du navigateur...3 Débloquez les pop-up...5 Mise en évidence du texte...6 Mise en évidence du texte...6 Mise en page du texte...7 Utilisation de tableaux....7

Plus en détail

Contenu Microsoft Windows 8.1

Contenu Microsoft Windows 8.1 Contenu Microsoft Windows 8.1 MODULE 1 AVANT-PROPOS CLAVIER SOURIS TERMINOLOGIE Modifier l apparence de l écran d accueil Modifier l avatar du compte FERMER UNE SESSION WINDOWS Redémarrer l ordinateur

Plus en détail

Access 2007 FF Access FR FR Base

Access 2007 FF Access FR FR Base ACCESS Basic Albertlaan 88 Avenue Albert Brussel B-1190 Bruxelles T +32 2 340 05 70 F +32 2 340 05 75 E-mail info@keyjob-training.com Website www.keyjob-training.com BTW TVA BE 0425 439 228 Access 2007

Plus en détail

ZOTERO Un outil gratuit de gestion de bibliographies

ZOTERO Un outil gratuit de gestion de bibliographies ZOTERO Un outil gratuit de gestion de bibliographies Téléchargement sur http://www.zotero.org Zotero est une extension du navigateur Web Firefox 0 Mais désormais applications autonomes par rapport à Firefox

Plus en détail

Google Drive, le cloud de Google

Google Drive, le cloud de Google Google met à disposition des utilisateurs ayant un compte Google un espace de 15 Go. Il est possible d'en obtenir plus en payant. // Google Drive sur le web Se connecter au site Google Drive A partir de

Plus en détail

Application de messagerie simple sur Android : Rapport de projet de VAP RSM

Application de messagerie simple sur Android : Rapport de projet de VAP RSM Application de messagerie simple sur Android : Rapport de projet de VAP RSM Projet encadré par : M. Hossam AFFIFI Elaboré par : Khaoula MRABET & Nessrine TRABELSI Responsable de la VAP : M. Patrice AUBRY

Plus en détail

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES Avant-propos Conçu par des pédagogues expérimentés, son originalité est d être à la fois un manuel de formation et un manuel de référence complet présentant les bonnes pratiques d utilisation. FICHES PRATIQUES

Plus en détail