SlideShare une entreprise Scribd logo
 

           Institut  Supérieur  d’Informatique  
           Université  de  Tunis  el  Manar  




           TP2  :  Initiation  à  la  
           Programmation  avec  Android  
           Programmation  Mobile  –  2ème  Licence  –  Systèmes  Embarqués  


           Année  Universitaire  :  2011/2012  
             

             



MME.  LILIA  SFAXI  
             

             
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                                1              
                                                                                                                                                                               
            


  TP2  :  Initiation  à  la  Programmation  avec  Android  
                                                                   Programmation  Mobile  


Objectifs  du  TP  
          Ce   TP   est   une   initiation   à   Android.   Nous   allons   réaliser   les   premiers   pas   pour   l’écriture   d’applications  :  
installation  de  l’environnement,  et  création  des  premières  applications  simples.  


I. Introduction  à  la  programmation  avec  Android  
          Android   est   un   système   d’exploitation   open-­‐‑source   pour   smartphones,   PDA   et   terminaux   mobiles,   et   basé   sur  
Linux.  Il  a  été  conçu  par  la  startup  Android,  qui  a  été  rachetée  par  Google  en  2005.    

          C’est   la   première   plateforme   mobile   open-­‐‑source   et   entièrement   paramétrable.   Il   permet   au   développeur   de  
profiter   au   maximum   de   tout   ce   que   peut   fournir   un   appareil   mobile,   permettant   ainsi   à   une   application   de   lancer   un  
appel,  envoyer  un  email  ou  SMS,  utiliser  l’appareil  photo  du  téléphone…  

          Android  est  en  constante  évolution  grâce  aux  applications  innovantes  que  réalisent  les  développeurs.  En  8  mois,  
plus   de   6000   applications   et   jeux   ont   été   développés   et   publiés   dans   le   market.   Il   est   possible   de   récupérer   les   sources  
d’Android  à  partir  du  site  :  http://source.android.com  

          Pour   les   développeurs,   il   faut   consulter   le   site   http://developer.android.com.   Vous   y   trouverez   les  
téléchargements  nécessaires,  de  la  documentation,  comment  publier  votre  application…  


I.  1. Installations  et  outils  

          Pour  créer  des  applications  pour  Android,  il  est  nécessaire  d’installer  les  éléments  suivants  :  

          JDK  :  Java  Development  Kit  :  Environnement  de  développement  de  Java,  qui  permet  de  compiler  et  exécuter  des  
           applications  écrites  en  Java.  
          Eclipse  :  IDE  (Integrated  Developement  Environment)  pour  une  écriture  simplifiée  du  code.  On  utilise  avec  Eclipse  
           le  plugin  ADT  (Android  Developement  Tools)  adapté  aux  applications  Android.  
          Android   SDK  :   Android   Software   Developement   Kit  :   Le   SDK   fournit   une   API   et   un   ensemble   d’outils   pour   le  
           développement  d’applications  sur  Android.  Il  contient  principalement  un  émulateur  (AVD  pour  Android  Virtual  
           Device)   qui   permet   de   modéliser   un   appareil   mobile   réel   en   définissant   les   options   logicielles   et   matérielles  
           désirées.   Le   SDK   est   disponible   en   téléchargement   pour   les   plateformes   Linux,   Mac   et   Windows   à   l'ʹadresse  
           suivante  :  http://developer.android.com/sdk/index.html    




          MME.  LILIA  SFAXI                                                                                                                                   2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                             2              
                                                                                                                                                                            
            

I.  1.  1.   Installation  d’Eclipse  et  du  plugin  ADT  
          Avant  d’installer  Eclipse,  il  faut  d’abord  installer  la  JDK,  qui  nous  permettra  de  compiler  des  programmes  Java.  
La  JDK  contient  également  une  JRE  (Java  Runtime  Environment),  l’environnement  d’exécution  permettant  d’exécuter  des  
programmes  écrits  en  Java.  Comme  Eclipse  est  écrit  en  Java,  il  ne  pourra  pas  démarrer  sans  JRE.    

          Il  est  possible  de  télécharger  JDK  à  partir  du  site  suivant  :    

          http://www.oracle.com/technetwork/java/javase/downloads/index.html  

          Remarque  :  Dans  Ubuntu,  il  vaut  mieux  installer  JDK  directement  à  partir  de  la  console  en  tapant  :  
                                           sudo apt-get install openjdk-7-jdk

          Pour   installer   Eclipse,   il   suffit   d’aller   sur   www.eclipse.org   et   de   télécharger   la   version   correspondante   à   votre  
plateforme.  La  version  que  nous  allons  utiliser  est  la  version  de  base  d’Eclipse  :  Eclipse  IDE  for  Java  Developers.    

          Remarque  :  Dans  Ubuntu,  installer  Eclipse  directement  à  partir  de  la  console  en  tapant  :  
                                       sudo apt-get install eclipse-platform

          Une  fois  Eclipse  installé,  il  faut  installer  le  plugin  ADT.  Pour  cela  :  

          Aller  vers  Help  -­‐‑>  Install  new  software…  




                                                                                                                                         
          Dans  la  fenêtre  qui  apparaît,  cliquer  sur  Add…  ,  et  taper  le  lien  :  https://dl-­‐‑ssl.google.com/android/eclipse/  dans  la  
           partie  Location  comme  indiqué  dans  la  figure  suivante  :  




          MME.  LILIA  SFAXI                                                                                                                                2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                                        3              
                                                                                                                                                                                 
      




                                                                                                                                         
    Cliquer  sur  OK,  et  suivez  la  procédure  d’installation  du  plugin  ADT  pou  Eclipse.  
    Une  fois  le  plugin  installé,  le  redémarrage  d’Eclipse  est  nécessaire.  
    Pour   vérifier   que   l’installation   s’est   bien   déroulée,   aller   vers   File   -­‐‑>   New   -­‐‑>   Other…   et   vérifier   qu’une   nouvelle  
     partie  appelée  Android  a  été  ajoutée.    




                                                                                                                                              




    MME.  LILIA  SFAXI                                                                                                                                           2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                     4              
                                                                                                                                                                   
           

I.  1.  2.   Installation  du  SDK  
         Le  SDK  est  fourni  sous  la  forme  d’un  fichier  compressé.  Une  fois  ce  fichier  décompressé,  aller  vers  le  répertoire  
tools  et  exécuter  le  fichier  android.  L’application  Android  Manager  est  lancée  :  




                                                                                                                       

         L’étape  suivante  est  donc  d’installer  les  plateformes  Android  nécessaires.  Il  suffit  de  sélectionner  les  plateformes  
qu’on  désire  installer,  et  cliquer  sur  Install  Packages…  

         Remarque  :  Pour  les  besoins  de  notre  application,  il  suffit  d’installer  le  package  Tools  et  le  package  Android  2.3.3.  

I.  1.  3.   Configuration  du  SDK  sur  Eclipse  
         Dans  la  barre  d’outils  principale  d’Eclipse,  on  peut  noter  la  présence  de  boutons  supplémentaires  :  

                       Permet  de  lancer  le  SDK  Manager  
                    
                       Permet  de  configurer  et  démarrer  l’émulateur  AVD  
                    
                       Permet  de  lancer  Android  Lint,  qui  scanne  le  projet  Android  pour  d’éventuels  bugs  
                    
                       Pour  créer  un  nouveau  projet  
                    
                       Permet  de  démarrer  un  projet  de  test  pour  Android  
                    
                      Permet  de  guider  l’utilisateur  pour  la  création  d’un  nouveau  fichier  XML  
                    
           Pour  configurer  le  SDK  :  

         Cliquer  sur  Window  -­‐‑>  Preferences  puis  sélectionner  Android  
         Indiquer  le  chemin  vers  votre  répertoire  SDK.  




         MME.  LILIA  SFAXI                                                                                                                        2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                              5              
                                                                                                                                                                          
         




                                                                                                                                       
       En  cliquant  sur  Apply,  la  liste  des  plateformes  installées  sera  affichée.    

   Une  fois  le  SDK  configuré,  il  est  possible  de  démarrer  l’émulateur.  Pour  cela,  cliquer  directement  sur                  .  

        TAF-­‐‑1  :   Lancer   votre   émulateur   Android   2.3.3.   Le   configurer   pour   qu’il   utilise   la   résolution   WQVGA400.  
        Naviguer  dessus  pour  découvrir  l’interface  sur  laquelle  vous  allez  travailler.    


I.  2. Ma  première  application  Android  

       Pour  créer  un  projet  Android  :  


       Cliquer  sur          ,  ou  aller  à  File  -­‐‑>  New  -­‐‑>  Android  Project  
       Spécifier  le  nom  du  projet  :  Helloworld,  et  cliquer  sur  Next  

       Choisissez  la  plateforme  Android  à  utiliser  (dans  notre  cas  2.3.3),  cliquer  sur  Next  
         Dans   la   fenêtre   suivante,   vous   devez   spécifier   un   package   à   utiliser,   qui   doit   être   unique.   Ce   package   doit  
        contenir  au  moins  deux  niveaux.  Dans  notre  cas,  on  peut  taper  isi.helloworld  




       MME.  LILIA  SFAXI                                                                                                                                 2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                                            6              
                                                                                                                                                                                              
               




                                                                                                                                                    
             Cliquer  sur  Finish.  Un  nouveau  projet  apparaît.  

      Voyons  l’arborescence  d’un  projet  Android  :  

                                               Répertoire  contenant                                            Répertoire  contenant  les  fichiers  générés  par  l’ADT.  
                                               les  sources  du  projet                                         Notamment,  le  fichier  R.java  contient  les  références  
                                                                                                                vers  les  ressources  du  projet      

                                           Fichier  jar  contenant  le  
                                           framework  Android  
                                                                                                                Répertoire  contenant  les  données  chargées  sur  le  
                                                                                                                mobile  à  la  compilation.  Ex  :  fichiers  texte,  audio,  
     Répertoire  contenant  les  ressources  du  projet.  Il  est                                               vidéo…  
     lu  par  l’ADT  pour  générer  le  fichier  R.java.    


                                                                                                                Regroupe  l’ensemble  des  images  (haute,  
                                                                                                                basse  et  moyenne  résolution)  
                   Répertoire  pour  la  description  de  l’interface  
                   graphique  avec  des  fichiers  .xml  

                                                                                                             Dossier  contenant  les  fichiers  décrivant  des  valeurs  
                                                                                                             utilisées  dans  l’application.  Ex  :  strings.xml  pour  les  
          Fichier  définissant  le  comportement  de  l’application.                                         chaînes,  arrays.xml  pour  les  tableaux…  
          Ex  :  nom,  icône,  thème,  version,  activités…  




                                                                                                          

              TAF-­‐‑2  :  Exécuter  votre  application  Helloworld.  Qu’affiche-­‐‑t-­‐‑elle  ?  où  a  été  spécifié  cet  affichage  dans  le  code  ?    

  
                                                        




             MME.  LILIA  SFAXI                                                                                                                                               2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                               7              
                                                                                                                                                                             
           

II. Création  d’applications  avec  Android  SDK  
II.  1. Notion  d’Activity  

         Une  activité  est  la  composante  principale  pour  une  application  Android.  Elle  représente  l’implémentation  métier  
dans  une  application  Android,  permettant  de  gérer  l’ensemble  des  vues  et  ressources.    

         Une   activité   peut   être   avec   ou   sans   interface   utilisateur.   Il   est   possible   d’avoir   plusieurs   activités   dans   le   même  
programme.  Elle  doit  toujours  être  déclarée  dans  le  fichier  AndroidManifest.xml.  

         Une   activité   n’est   pas   linéaire,   elle   est   soumise   à   plusieurs   évènements.   Chaque   événement   est   représenté   dans  
une  méthode.  La  figure  suivante  illustre  le  cycle  de  vie  d’une  application  Android  :  




                                                                                                                               

                                                                                      



         MME.  LILIA  SFAXI                                                                                                                                  2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                             8              
                                                                                                                                                                             
             
           onCreate()  :   Cette   méthode   est   appelée   à   la   création   d’une   activité.   Elle   permet   de   l’initialiser.   C’est   ici   que  
            l’interface  graphique  est  spécifiée.  
           onStart()  :  Cette  méthode  est  appelée  quand  l’application  est  démarrée.    
           onResume()  :  Cette  méthode  est  appelée  quand  l’application  passe  (ou  repasse)  en  avant-­‐‑plan.  
           onPause()  :  Appelée  quand  l’application  passe  en  arrière-­‐‑plan  et  qu’une  autre  application  se  met  devant.  
           onStop()  :  Appelée  quand  l’application  n’est  plus  visible.    
           onRestart()  :  Appelée  quand  l’application  redevient  visible.  

           onDestroy()  :  Appelée  quand  votre  application  est  fermée  par  le  système  à  cause  d’un  manque  de  ressources,  ou  
            par  l’utilisateur  à  l’utilisation  d’un  finish().    
           Il  est  donc  permis  de  spécifier  un  comportement  pour  chacun  de  ces  évènements.  Pour  cela,  il  suffit  de  rajouter  les  
méthodes  correspondantes  (de  la  même  manière  que  pour  la  méthode  onCreate)  déjà  générée  par  ADT.  

           Pour  générer  ces  méthodes,  commencer  à  taper  le  nom  de  la  méthode  dans  le  fichier  de  code,  puis  taper  sur  les  
touches  Ctrl-­‐‑Espace.    




                                                                                                                                                  

           Cliquer  sur  la  méthode  qui  vous  est  proposée.  Son  code  sera  automatiquement  généré.  


            TAF-­‐‑3  :    
                   1.     Générer  les  méthodes  correspondant  à  chacun  des  évènements  listés  dans  le  cycle  de  vie.    
                   2.     Nous   désirons   voir   le   comportement   de   l’activité   pour   chacun   de   ces   évènements.   Pour   cela,   chaque  
                          méthode  va  afficher  son  nom.    




           MME.  LILIA  SFAXI                                                                                                                                2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                       9              
                                                                                                                                                                     
           
                 Indication  :  Utiliser  le  code  suivant  pour  l’affichage  :  
                       Toast helloToast = Toast.makeText(this, "message à afficher", Toast.LENGTH_LONG);
                       helloToast.setGravity(Gravity.CENTER, 0, 0);
                       helloToast.show();

                3.     Dans  la  méthode  onCreate,  commenter  la  ligne    
                       setContentView(R.layout.main);      

                        et  la  remplacer  par  :  
                       TextView tv = new TextView(this);
                       tv.setText("Hello, Android");
                       setContentView(tv);

                        que  constatez-­‐‑vous  ?  


II.  2. Modification  de  l’interface  graphique  

II.  2.  1.   Ajout  d’éléments  graphiques  
         L’interface   graphique   est   gérée   grâce   aux   fichiers   xml   se   trouvant   dans   le   répertoire   layout.   ADT   offre   une  
interface  conviviale  pour  gérer  ces  fichiers,  et  pour  manipuler  graphiquement  les  éléments  de  l’interface.  




                                                                                                                         

         Il  est  ainsi  possible  de  créer  tous  les  éléments  de  l’interface  grâce  à  des  drag-­‐‑and-­‐‑drop.  


          TAF-­‐‑4  :  Ajouter  à  votre  application  Helloworld  un  bouton  et  un  champs  de  saisie.  Noter  les  changements  dans  le  
          code  XML  du  fichier  main.xml.  Exécuter.  
          Indication  :  Avant  d’exécuter,  annuler  l’opération  3/  du  TAF-­‐‑3.  

         Pour  définir  le  comportement  de  votre  bouton,  suivez  les  étapes  suivantes  :  



         MME.  LILIA  SFAXI                                                                                                                          2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                      10     
                                                                                                                                                                     
            

II.  2.  2.   Comportement  d’un  bouton  
          Dans  le  code  du  fichier  main.xml,  associer  un  identifiant  et  un  titre  à  votre  bouton  :  
                                         <Button        android:id="@+id/boutonAfficher"
                                                        android:text="Afficher"
                                                        … />

          Créer  un  attribut  dans  votre  activité  de  type  Button  :  
                                        private Button bAfficher;

          Dans  la  méthode  onCreate()  :  
           –    Initialiser  l’attribut  bAfficher  en  lui  associant  le  bouton  créé  dans  le  main.xml  :  
                         this.bAfficher = (Button) this.findViewById(R.id.boutonAfficher) ;

           –    Associer  un  comportement  à  votre  bouton  :  
                         this.bAfficher.setOnClickListener(new OnClickListener() {
                             @Override
                             public void onClick(View v) {
                                  //comportement de votre bouton
                             }
                         });

           TAF-­‐‑5  :  Modifier  le  comportement  de  votre  bouton  pour  qu’il  affiche  J’ai  été  cliqué  !  pendant  2  secondes  dans  un  
           Toast,  quand  il  est  cliqué.  
           Indication  :  Modifier  l’instruction  d’affichage  pour  qu’elle  devienne  comme  suit  :  
           Toast   helloToast   =   Toast.makeText(HelloworldActivity.this,                                         "message    à      afficher",
           Toast.LENGTH_LONG);
           helloToast.setGravity(Gravity.CENTER, 0, 0);
           helloToast.show();

II.  2.  3.   Création  d’une  nouvelle  activité  
          Pour  créer  une  nouvelle  activité,  il  faut  suivre  les  étapes  suivantes  :  

          Créer  une  nouvelle  classe  dans  votre  package  qui  hérite  de  la  classe  Activity.  
          Générer  la  méthode  onCreate().  
          Créer  un  nouveau  fichier  layout,  et  y  ajouter  les  éléments  graphiques  désirés.  

          Associer  ce  fichier  layout  à  votre  activité  dans  la  méthode  onCreate().  
          Ajouter  la  nouvelle  activité  dans  le  fichier  Manifest.    

          Remarque  :   Pour   cette   nouvelle   activité,   dans   le   manifest,   ne   pas   garder   la   balise      <intent-filter> :   Cette  
balise  permet,  grâce  à  son  action  android.intent.action.MAIN,  de  spécifier  que  l’activité  en  cours  est  l’activité  de  
départ  de  l’application.    



          MME.  LILIA  SFAXI                                                                                                                         2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                          11     
                                                                                                                                                                          
             
             

            TAF-­‐‑6  :  Créer  une  nouvelle  activité  qu’on  nommera  ClicActivity,  contenant  uniquement  un  champs  de  texte  de  
            type  TextView,  qu’on  nommera  clicText.  Ecrire  dans  ce  champs  de  texte  la  chaîne  :  «  Bonjour  !  »  


II.  2.  4.   Passage  d’une  activité  à  une  autre  
           Le  passage  entre  deux  activités  requiert  un  Intent.  Un  Intent  est  un  conteneur  d’information.  Il  permet  de  passer  
des  messages  entre  deux  activités.  L’activité  appelante  pourra  ainsi  transmettre  des  informations  à  l’application  appelée,  
ainsi  qu’au  système  Android.    

           Il  existe  plusieurs  manières  de  créer  un  Intent.  Nous  allons  choisir  la  suivante  :  

                       Intent myIntent = new Intent(<contexte>, <classe de l’activité cible>);

           Pour  démarrer  une  autre  activité,  il  faut  lancer  la  méthode  startActivity(Intent  i)  de  la  classe  Activity  initiale.    


            TAF-­‐‑6  :   Configurer   le   comportement   de   votre   bouton   pour   qu’il   lance   l’activité   ClicActivity,   et   observez   le  
            résultat.  
            Indications  :    
                1. Dans  le  Intent,  le  contexte  sera  HelloworldActivity.this,  et  la  classe  cible  sera  ClicActivity.class.  
                2. Pour  démarrer  l’activité,  la  méthode  startActivity  doit  être  appelée  à  partir  de  l’objet  HelloworldActivity.this  

II.  2.  5.   Récupération  de  messages  entre  activités  
           Pour  passer  un  message  à  une  activité,  on  ajoute  des  Extras  aux  Intents.  Par  exemple  :  
                                               myIntent.putExtra(<id>, <chaîne>);
           va  passer  la  chaîne  de  caractère  chaîne  dans  une  variable  appelée  id  à  l’activité  cible  de  l’Intent.    

           Dans  l’activité  cible,  on  récupère  cet  Extra  en  utilisant  :  
                                                  getIntent().getStringExtra(<id>) ;


         TAF-­‐‑7  :  Modifier  vos  activités  de  manière  à  ce  que  :  
                1.   L’utilisateur  saisit  une  chaîne  dans  le  champ  de  saisie  de  HelloworldActivity  
                2.   L’utilisateur  clique  sur  le  bouton  
                3.   ClicActivity  est  chargée,  et  le  champs  de  texte  TextView  contient  la  chaîne  qu’a  saisi  l’utilisateur.    



III. Homework  
           Installer  l'ʹenvironnement  Android  chez  vous.  Créer  une  application  contenant  :  




           MME.  LILIA  SFAXI                                                                                                                             2011/2012  
TP2  :  Initiation  à  la  Programmation  avec  Android                                                                       12     
                                                                                                                                                            
  
-­‐‑   Deux  champs  de  texte    
-­‐‑   Un  bouton  fermer  qui  permet  de  fermer  définitivement  l’application  
-­‐‑   Un   bouton   concaténer   qui   va   charger   une   deuxième   activité.   Cette   dernière   va   afficher   les   deux   chaînes  
       concaténées.    




MME.  LILIA  SFAXI                                                                                                                          2011/2012  

Contenu connexe

Tendances

BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : Cassandra
Lilia Sfaxi
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
Amal Abid
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
Mouna Torjmen
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & Spark
Alexia Audevart
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)
Alexis Seigneurin
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
Lilia Sfaxi
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1
Amal Abid
 
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Hatim CHAHDI
 
Cours Big Data Chap3
Cours Big Data Chap3Cours Big Data Chap3
Cours Big Data Chap3
Amal Abid
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
Lilia Sfaxi
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5
Amal Abid
 
Chp5 - Applications Android
Chp5 - Applications AndroidChp5 - Applications Android
Chp5 - Applications Android
Lilia Sfaxi
 
noSQL
noSQLnoSQL
noSQL
Klee Group
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
Abdelghani Azri
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQL
Antoine Augusti
 
Chapitre1 introduction
Chapitre1 introductionChapitre1 introduction
Chapitre1 introduction
Mouna Torjmen
 
Android-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateursAndroid-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateurs
Lilia Sfaxi
 
Big data
Big dataBig data
Big data
Yosra ADDALI
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
Abdoulaye Dieng
 

Tendances (20)

BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : Cassandra
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & Spark
 
Bi
BiBi
Bi
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1
 
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
 
Cours Big Data Chap3
Cours Big Data Chap3Cours Big Data Chap3
Cours Big Data Chap3
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5
 
Chp5 - Applications Android
Chp5 - Applications AndroidChp5 - Applications Android
Chp5 - Applications Android
 
noSQL
noSQLnoSQL
noSQL
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQL
 
Chapitre1 introduction
Chapitre1 introductionChapitre1 introduction
Chapitre1 introduction
 
Android-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateursAndroid-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateurs
 
Big data
Big dataBig data
Big data
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
 

En vedette

P3 listes et elements graphiques avancés
P3 listes et elements graphiques avancésP3 listes et elements graphiques avancés
P3 listes et elements graphiques avancés
Lilia Sfaxi
 
Android-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intentsAndroid-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intents
Lilia Sfaxi
 
P2 éléments graphiques android
P2 éléments graphiques androidP2 éléments graphiques android
P2 éléments graphiques android
Lilia Sfaxi
 
P5 stockage
P5 stockageP5 stockage
P5 stockage
Lilia Sfaxi
 
P4 intents
P4 intentsP4 intents
P4 intents
Lilia Sfaxi
 
P6 composants avancés
P6 composants avancésP6 composants avancés
P6 composants avancés
Lilia Sfaxi
 
P1 introduction à android
P1 introduction à androidP1 introduction à android
P1 introduction à android
Lilia Sfaxi
 
Composants Android
Composants AndroidComposants Android
Composants Android
Lilia Sfaxi
 
Stockage de données dans Android : Fichiers
Stockage de données dans Android : FichiersStockage de données dans Android : Fichiers
Stockage de données dans Android : Fichiers
Lilia Sfaxi
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-Eclipse
Lilia Sfaxi
 
Android-Tp5 : web services
Android-Tp5 : web servicesAndroid-Tp5 : web services
Android-Tp5 : web services
Lilia Sfaxi
 
Présentation de Thèse
Présentation de ThèsePrésentation de Thèse
Présentation de Thèse
Lilia Sfaxi
 
Android-Tp4: stockage
Android-Tp4: stockageAndroid-Tp4: stockage
Android-Tp4: stockage
Lilia Sfaxi
 
Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menus
Lilia Sfaxi
 

En vedette (14)

P3 listes et elements graphiques avancés
P3 listes et elements graphiques avancésP3 listes et elements graphiques avancés
P3 listes et elements graphiques avancés
 
Android-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intentsAndroid-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intents
 
P2 éléments graphiques android
P2 éléments graphiques androidP2 éléments graphiques android
P2 éléments graphiques android
 
P5 stockage
P5 stockageP5 stockage
P5 stockage
 
P4 intents
P4 intentsP4 intents
P4 intents
 
P6 composants avancés
P6 composants avancésP6 composants avancés
P6 composants avancés
 
P1 introduction à android
P1 introduction à androidP1 introduction à android
P1 introduction à android
 
Composants Android
Composants AndroidComposants Android
Composants Android
 
Stockage de données dans Android : Fichiers
Stockage de données dans Android : FichiersStockage de données dans Android : Fichiers
Stockage de données dans Android : Fichiers
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-Eclipse
 
Android-Tp5 : web services
Android-Tp5 : web servicesAndroid-Tp5 : web services
Android-Tp5 : web services
 
Présentation de Thèse
Présentation de ThèsePrésentation de Thèse
Présentation de Thèse
 
Android-Tp4: stockage
Android-Tp4: stockageAndroid-Tp4: stockage
Android-Tp4: stockage
 
Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menus
 

Similaire à Initiation à Android

Hello droid
Hello droidHello droid
Hello droid
Wiki Info Systeme
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Bosco Basabana
 
Ateliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceAteliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceKorteby Farouk
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
Lilia Sfaxi
 
Hackathon Android Abidjan
Hackathon Android  AbidjanHackathon Android  Abidjan
Hackathon Android Abidjan
Bacely YoroBi
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
Saber LAJILI
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
Sabeur LAJILI
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
Sabeur LAJILI
 
Apache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéroApache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéro
Alexandre Pereira
 
Chapitre 1 android
Chapitre 1 androidChapitre 1 android
1-android.pdf
1-android.pdf1-android.pdf
1-android.pdf
FethiBenYahia1
 
chapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdfchapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdf
olfaharrabi2
 
Tutorial android - créer des apps
Tutorial android - créer des appsTutorial android - créer des apps
Tutorial android - créer des apps
Noé Breiss
 
Tutorial android
Tutorial androidTutorial android
Tutorial android
ERWIN AGUILAR
 
Chapitre 1-introduction-plateforme-android
Chapitre 1-introduction-plateforme-androidChapitre 1-introduction-plateforme-android
Chapitre 1-introduction-plateforme-android
Salah Gharbi
 
cours Android.pptx
cours Android.pptxcours Android.pptx
cours Android.pptx
YaminaGh1
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contact
Jasmine Conseil
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contact
Jasmine Conseil
 
Cours android
Cours androidCours android
Cours androidAd Hafsa
 

Similaire à Initiation à Android (20)

Chap android
Chap androidChap android
Chap android
 
Hello droid
Hello droidHello droid
Hello droid
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
 
Ateliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceAteliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open source
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
 
Hackathon Android Abidjan
Hackathon Android  AbidjanHackathon Android  Abidjan
Hackathon Android Abidjan
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Apache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéroApache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéro
 
Chapitre 1 android
Chapitre 1 androidChapitre 1 android
Chapitre 1 android
 
1-android.pdf
1-android.pdf1-android.pdf
1-android.pdf
 
chapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdfchapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdf
 
Tutorial android - créer des apps
Tutorial android - créer des appsTutorial android - créer des apps
Tutorial android - créer des apps
 
Tutorial android
Tutorial androidTutorial android
Tutorial android
 
Chapitre 1-introduction-plateforme-android
Chapitre 1-introduction-plateforme-androidChapitre 1-introduction-plateforme-android
Chapitre 1-introduction-plateforme-android
 
cours Android.pptx
cours Android.pptxcours Android.pptx
cours Android.pptx
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contact
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contact
 
Cours android
Cours androidCours android
Cours android
 

Plus de Lilia Sfaxi

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
Lilia Sfaxi
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
Lilia Sfaxi
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
Lilia Sfaxi
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
Lilia Sfaxi
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
Lilia Sfaxi
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
Lilia Sfaxi
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
Lilia Sfaxi
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
Lilia Sfaxi
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
Lilia Sfaxi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
Lilia Sfaxi
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
Lilia Sfaxi
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
Lilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
Lilia Sfaxi
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
Lilia Sfaxi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
Lilia Sfaxi
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
Lilia Sfaxi
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
Lilia Sfaxi
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
Lilia Sfaxi
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancés
Lilia Sfaxi
 
Android - Tp 5 - stockage de données
Android - Tp 5 -  stockage de donnéesAndroid - Tp 5 -  stockage de données
Android - Tp 5 - stockage de données
Lilia Sfaxi
 

Plus de Lilia Sfaxi (20)

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancés
 
Android - Tp 5 - stockage de données
Android - Tp 5 -  stockage de donnéesAndroid - Tp 5 -  stockage de données
Android - Tp 5 - stockage de données
 

Dernier

Veille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdfVeille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdf
frizzole
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
BenotGeorges3
 
Textes de famille concernant les guerres V2.pdf
Textes de famille concernant les guerres V2.pdfTextes de famille concernant les guerres V2.pdf
Textes de famille concernant les guerres V2.pdf
Michel Bruley
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Bibliothèque de L'Union - Bilan de l'année 2023
Bibliothèque de L'Union - Bilan de l'année 2023Bibliothèque de L'Union - Bilan de l'année 2023
Bibliothèque de L'Union - Bilan de l'année 2023
Bibliothèque de L'Union
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
M2i Formation
 

Dernier (7)

Veille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdfVeille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdf
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
 
Textes de famille concernant les guerres V2.pdf
Textes de famille concernant les guerres V2.pdfTextes de famille concernant les guerres V2.pdf
Textes de famille concernant les guerres V2.pdf
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
 
Bibliothèque de L'Union - Bilan de l'année 2023
Bibliothèque de L'Union - Bilan de l'année 2023Bibliothèque de L'Union - Bilan de l'année 2023
Bibliothèque de L'Union - Bilan de l'année 2023
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
 

Initiation à Android

  • 1.   Institut  Supérieur  d’Informatique   Université  de  Tunis  el  Manar   TP2  :  Initiation  à  la   Programmation  avec  Android   Programmation  Mobile  –  2ème  Licence  –  Systèmes  Embarqués   Année  Universitaire  :  2011/2012       MME.  LILIA  SFAXI      
  • 2. TP2  :  Initiation  à  la  Programmation  avec  Android   1         TP2  :  Initiation  à  la  Programmation  avec  Android   Programmation  Mobile   Objectifs  du  TP   Ce   TP   est   une   initiation   à   Android.   Nous   allons   réaliser   les   premiers   pas   pour   l’écriture   d’applications  :   installation  de  l’environnement,  et  création  des  premières  applications  simples.   I. Introduction  à  la  programmation  avec  Android   Android   est   un   système   d’exploitation   open-­‐‑source   pour   smartphones,   PDA   et   terminaux   mobiles,   et   basé   sur   Linux.  Il  a  été  conçu  par  la  startup  Android,  qui  a  été  rachetée  par  Google  en  2005.     C’est   la   première   plateforme   mobile   open-­‐‑source   et   entièrement   paramétrable.   Il   permet   au   développeur   de   profiter   au   maximum   de   tout   ce   que   peut   fournir   un   appareil   mobile,   permettant   ainsi   à   une   application   de   lancer   un   appel,  envoyer  un  email  ou  SMS,  utiliser  l’appareil  photo  du  téléphone…   Android  est  en  constante  évolution  grâce  aux  applications  innovantes  que  réalisent  les  développeurs.  En  8  mois,   plus   de   6000   applications   et   jeux   ont   été   développés   et   publiés   dans   le   market.   Il   est   possible   de   récupérer   les   sources   d’Android  à  partir  du  site  :  http://source.android.com   Pour   les   développeurs,   il   faut   consulter   le   site   http://developer.android.com.   Vous   y   trouverez   les   téléchargements  nécessaires,  de  la  documentation,  comment  publier  votre  application…   I.  1. Installations  et  outils   Pour  créer  des  applications  pour  Android,  il  est  nécessaire  d’installer  les  éléments  suivants  :    JDK  :  Java  Development  Kit  :  Environnement  de  développement  de  Java,  qui  permet  de  compiler  et  exécuter  des   applications  écrites  en  Java.    Eclipse  :  IDE  (Integrated  Developement  Environment)  pour  une  écriture  simplifiée  du  code.  On  utilise  avec  Eclipse   le  plugin  ADT  (Android  Developement  Tools)  adapté  aux  applications  Android.    Android   SDK  :   Android   Software   Developement   Kit  :   Le   SDK   fournit   une   API   et   un   ensemble   d’outils   pour   le   développement  d’applications  sur  Android.  Il  contient  principalement  un  émulateur  (AVD  pour  Android  Virtual   Device)   qui   permet   de   modéliser   un   appareil   mobile   réel   en   définissant   les   options   logicielles   et   matérielles   désirées.   Le   SDK   est   disponible   en   téléchargement   pour   les   plateformes   Linux,   Mac   et   Windows   à   l'ʹadresse   suivante  :  http://developer.android.com/sdk/index.html     MME.  LILIA  SFAXI                  2011/2012  
  • 3. TP2  :  Initiation  à  la  Programmation  avec  Android   2         I.  1.  1.   Installation  d’Eclipse  et  du  plugin  ADT   Avant  d’installer  Eclipse,  il  faut  d’abord  installer  la  JDK,  qui  nous  permettra  de  compiler  des  programmes  Java.   La  JDK  contient  également  une  JRE  (Java  Runtime  Environment),  l’environnement  d’exécution  permettant  d’exécuter  des   programmes  écrits  en  Java.  Comme  Eclipse  est  écrit  en  Java,  il  ne  pourra  pas  démarrer  sans  JRE.     Il  est  possible  de  télécharger  JDK  à  partir  du  site  suivant  :     http://www.oracle.com/technetwork/java/javase/downloads/index.html   Remarque  :  Dans  Ubuntu,  il  vaut  mieux  installer  JDK  directement  à  partir  de  la  console  en  tapant  :   sudo apt-get install openjdk-7-jdk Pour   installer   Eclipse,   il   suffit   d’aller   sur   www.eclipse.org   et   de   télécharger   la   version   correspondante   à   votre   plateforme.  La  version  que  nous  allons  utiliser  est  la  version  de  base  d’Eclipse  :  Eclipse  IDE  for  Java  Developers.     Remarque  :  Dans  Ubuntu,  installer  Eclipse  directement  à  partir  de  la  console  en  tapant  :   sudo apt-get install eclipse-platform Une  fois  Eclipse  installé,  il  faut  installer  le  plugin  ADT.  Pour  cela  :    Aller  vers  Help  -­‐‑>  Install  new  software…      Dans  la  fenêtre  qui  apparaît,  cliquer  sur  Add…  ,  et  taper  le  lien  :  https://dl-­‐‑ssl.google.com/android/eclipse/  dans  la   partie  Location  comme  indiqué  dans  la  figure  suivante  :   MME.  LILIA  SFAXI                  2011/2012  
  • 4. TP2  :  Initiation  à  la  Programmation  avec  Android   3            Cliquer  sur  OK,  et  suivez  la  procédure  d’installation  du  plugin  ADT  pou  Eclipse.    Une  fois  le  plugin  installé,  le  redémarrage  d’Eclipse  est  nécessaire.    Pour   vérifier   que   l’installation   s’est   bien   déroulée,   aller   vers   File   -­‐‑>   New   -­‐‑>   Other…   et   vérifier   qu’une   nouvelle   partie  appelée  Android  a  été  ajoutée.       MME.  LILIA  SFAXI                  2011/2012  
  • 5. TP2  :  Initiation  à  la  Programmation  avec  Android   4         I.  1.  2.   Installation  du  SDK   Le  SDK  est  fourni  sous  la  forme  d’un  fichier  compressé.  Une  fois  ce  fichier  décompressé,  aller  vers  le  répertoire   tools  et  exécuter  le  fichier  android.  L’application  Android  Manager  est  lancée  :     L’étape  suivante  est  donc  d’installer  les  plateformes  Android  nécessaires.  Il  suffit  de  sélectionner  les  plateformes   qu’on  désire  installer,  et  cliquer  sur  Install  Packages…   Remarque  :  Pour  les  besoins  de  notre  application,  il  suffit  d’installer  le  package  Tools  et  le  package  Android  2.3.3.   I.  1.  3.   Configuration  du  SDK  sur  Eclipse   Dans  la  barre  d’outils  principale  d’Eclipse,  on  peut  noter  la  présence  de  boutons  supplémentaires  :   Permet  de  lancer  le  SDK  Manager     Permet  de  configurer  et  démarrer  l’émulateur  AVD     Permet  de  lancer  Android  Lint,  qui  scanne  le  projet  Android  pour  d’éventuels  bugs     Pour  créer  un  nouveau  projet     Permet  de  démarrer  un  projet  de  test  pour  Android     Permet  de  guider  l’utilisateur  pour  la  création  d’un  nouveau  fichier  XML      Pour  configurer  le  SDK  :    Cliquer  sur  Window  -­‐‑>  Preferences  puis  sélectionner  Android    Indiquer  le  chemin  vers  votre  répertoire  SDK.   MME.  LILIA  SFAXI                  2011/2012  
  • 6. TP2  :  Initiation  à  la  Programmation  avec  Android   5            En  cliquant  sur  Apply,  la  liste  des  plateformes  installées  sera  affichée.     Une  fois  le  SDK  configuré,  il  est  possible  de  démarrer  l’émulateur.  Pour  cela,  cliquer  directement  sur   .   TAF-­‐‑1  :   Lancer   votre   émulateur   Android   2.3.3.   Le   configurer   pour   qu’il   utilise   la   résolution   WQVGA400.   Naviguer  dessus  pour  découvrir  l’interface  sur  laquelle  vous  allez  travailler.     I.  2. Ma  première  application  Android   Pour  créer  un  projet  Android  :    Cliquer  sur   ,  ou  aller  à  File  -­‐‑>  New  -­‐‑>  Android  Project    Spécifier  le  nom  du  projet  :  Helloworld,  et  cliquer  sur  Next    Choisissez  la  plateforme  Android  à  utiliser  (dans  notre  cas  2.3.3),  cliquer  sur  Next     Dans   la   fenêtre   suivante,   vous   devez   spécifier   un   package   à   utiliser,   qui   doit   être   unique.   Ce   package   doit   contenir  au  moins  deux  niveaux.  Dans  notre  cas,  on  peut  taper  isi.helloworld   MME.  LILIA  SFAXI                  2011/2012  
  • 7. TP2  :  Initiation  à  la  Programmation  avec  Android   6            Cliquer  sur  Finish.  Un  nouveau  projet  apparaît.   Voyons  l’arborescence  d’un  projet  Android  :   Répertoire  contenant   Répertoire  contenant  les  fichiers  générés  par  l’ADT.   les  sources  du  projet   Notamment,  le  fichier  R.java  contient  les  références   vers  les  ressources  du  projet       Fichier  jar  contenant  le   framework  Android   Répertoire  contenant  les  données  chargées  sur  le   mobile  à  la  compilation.  Ex  :  fichiers  texte,  audio,   Répertoire  contenant  les  ressources  du  projet.  Il  est   vidéo…   lu  par  l’ADT  pour  générer  le  fichier  R.java.     Regroupe  l’ensemble  des  images  (haute,   basse  et  moyenne  résolution)   Répertoire  pour  la  description  de  l’interface   graphique  avec  des  fichiers  .xml   Dossier  contenant  les  fichiers  décrivant  des  valeurs   utilisées  dans  l’application.  Ex  :  strings.xml  pour  les   Fichier  définissant  le  comportement  de  l’application.   chaînes,  arrays.xml  pour  les  tableaux…   Ex  :  nom,  icône,  thème,  version,  activités…     TAF-­‐‑2  :  Exécuter  votre  application  Helloworld.  Qu’affiche-­‐‑t-­‐‑elle  ?  où  a  été  spécifié  cet  affichage  dans  le  code  ?           MME.  LILIA  SFAXI                  2011/2012  
  • 8. TP2  :  Initiation  à  la  Programmation  avec  Android   7         II. Création  d’applications  avec  Android  SDK   II.  1. Notion  d’Activity   Une  activité  est  la  composante  principale  pour  une  application  Android.  Elle  représente  l’implémentation  métier   dans  une  application  Android,  permettant  de  gérer  l’ensemble  des  vues  et  ressources.     Une   activité   peut   être   avec   ou   sans   interface   utilisateur.   Il   est   possible   d’avoir   plusieurs   activités   dans   le   même   programme.  Elle  doit  toujours  être  déclarée  dans  le  fichier  AndroidManifest.xml.   Une   activité   n’est   pas   linéaire,   elle   est   soumise   à   plusieurs   évènements.   Chaque   événement   est   représenté   dans   une  méthode.  La  figure  suivante  illustre  le  cycle  de  vie  d’une  application  Android  :       MME.  LILIA  SFAXI                  2011/2012  
  • 9. TP2  :  Initiation  à  la  Programmation  avec  Android   8          onCreate()  :   Cette   méthode   est   appelée   à   la   création   d’une   activité.   Elle   permet   de   l’initialiser.   C’est   ici   que   l’interface  graphique  est  spécifiée.    onStart()  :  Cette  méthode  est  appelée  quand  l’application  est  démarrée.      onResume()  :  Cette  méthode  est  appelée  quand  l’application  passe  (ou  repasse)  en  avant-­‐‑plan.    onPause()  :  Appelée  quand  l’application  passe  en  arrière-­‐‑plan  et  qu’une  autre  application  se  met  devant.    onStop()  :  Appelée  quand  l’application  n’est  plus  visible.      onRestart()  :  Appelée  quand  l’application  redevient  visible.    onDestroy()  :  Appelée  quand  votre  application  est  fermée  par  le  système  à  cause  d’un  manque  de  ressources,  ou   par  l’utilisateur  à  l’utilisation  d’un  finish().     Il  est  donc  permis  de  spécifier  un  comportement  pour  chacun  de  ces  évènements.  Pour  cela,  il  suffit  de  rajouter  les   méthodes  correspondantes  (de  la  même  manière  que  pour  la  méthode  onCreate)  déjà  générée  par  ADT.   Pour  générer  ces  méthodes,  commencer  à  taper  le  nom  de  la  méthode  dans  le  fichier  de  code,  puis  taper  sur  les   touches  Ctrl-­‐‑Espace.       Cliquer  sur  la  méthode  qui  vous  est  proposée.  Son  code  sera  automatiquement  généré.   TAF-­‐‑3  :     1. Générer  les  méthodes  correspondant  à  chacun  des  évènements  listés  dans  le  cycle  de  vie.     2. Nous   désirons   voir   le   comportement   de   l’activité   pour   chacun   de   ces   évènements.   Pour   cela,   chaque   méthode  va  afficher  son  nom.     MME.  LILIA  SFAXI                  2011/2012  
  • 10. TP2  :  Initiation  à  la  Programmation  avec  Android   9         Indication  :  Utiliser  le  code  suivant  pour  l’affichage  :   Toast helloToast = Toast.makeText(this, "message à afficher", Toast.LENGTH_LONG); helloToast.setGravity(Gravity.CENTER, 0, 0); helloToast.show(); 3. Dans  la  méthode  onCreate,  commenter  la  ligne     setContentView(R.layout.main);                    et  la  remplacer  par  :     TextView tv = new TextView(this); tv.setText("Hello, Android"); setContentView(tv);              que  constatez-­‐‑vous  ?   II.  2. Modification  de  l’interface  graphique   II.  2.  1.   Ajout  d’éléments  graphiques   L’interface   graphique   est   gérée   grâce   aux   fichiers   xml   se   trouvant   dans   le   répertoire   layout.   ADT   offre   une   interface  conviviale  pour  gérer  ces  fichiers,  et  pour  manipuler  graphiquement  les  éléments  de  l’interface.     Il  est  ainsi  possible  de  créer  tous  les  éléments  de  l’interface  grâce  à  des  drag-­‐‑and-­‐‑drop.   TAF-­‐‑4  :  Ajouter  à  votre  application  Helloworld  un  bouton  et  un  champs  de  saisie.  Noter  les  changements  dans  le   code  XML  du  fichier  main.xml.  Exécuter.   Indication  :  Avant  d’exécuter,  annuler  l’opération  3/  du  TAF-­‐‑3.   Pour  définir  le  comportement  de  votre  bouton,  suivez  les  étapes  suivantes  :   MME.  LILIA  SFAXI                  2011/2012  
  • 11. TP2  :  Initiation  à  la  Programmation  avec  Android   10         II.  2.  2.   Comportement  d’un  bouton    Dans  le  code  du  fichier  main.xml,  associer  un  identifiant  et  un  titre  à  votre  bouton  :   <Button android:id="@+id/boutonAfficher" android:text="Afficher" … />  Créer  un  attribut  dans  votre  activité  de  type  Button  :   private Button bAfficher;  Dans  la  méthode  onCreate()  :   – Initialiser  l’attribut  bAfficher  en  lui  associant  le  bouton  créé  dans  le  main.xml  :   this.bAfficher = (Button) this.findViewById(R.id.boutonAfficher) ; – Associer  un  comportement  à  votre  bouton  :   this.bAfficher.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //comportement de votre bouton } }); TAF-­‐‑5  :  Modifier  le  comportement  de  votre  bouton  pour  qu’il  affiche  J’ai  été  cliqué  !  pendant  2  secondes  dans  un   Toast,  quand  il  est  cliqué.   Indication  :  Modifier  l’instruction  d’affichage  pour  qu’elle  devienne  comme  suit  :   Toast helloToast = Toast.makeText(HelloworldActivity.this, "message à afficher", Toast.LENGTH_LONG); helloToast.setGravity(Gravity.CENTER, 0, 0); helloToast.show(); II.  2.  3.   Création  d’une  nouvelle  activité   Pour  créer  une  nouvelle  activité,  il  faut  suivre  les  étapes  suivantes  :    Créer  une  nouvelle  classe  dans  votre  package  qui  hérite  de  la  classe  Activity.    Générer  la  méthode  onCreate().    Créer  un  nouveau  fichier  layout,  et  y  ajouter  les  éléments  graphiques  désirés.    Associer  ce  fichier  layout  à  votre  activité  dans  la  méthode  onCreate().    Ajouter  la  nouvelle  activité  dans  le  fichier  Manifest.     Remarque  :   Pour   cette   nouvelle   activité,   dans   le   manifest,   ne   pas   garder   la   balise     <intent-filter> :   Cette   balise  permet,  grâce  à  son  action  android.intent.action.MAIN,  de  spécifier  que  l’activité  en  cours  est  l’activité  de   départ  de  l’application.     MME.  LILIA  SFAXI                  2011/2012  
  • 12. TP2  :  Initiation  à  la  Programmation  avec  Android   11           TAF-­‐‑6  :  Créer  une  nouvelle  activité  qu’on  nommera  ClicActivity,  contenant  uniquement  un  champs  de  texte  de   type  TextView,  qu’on  nommera  clicText.  Ecrire  dans  ce  champs  de  texte  la  chaîne  :  «  Bonjour  !  »   II.  2.  4.   Passage  d’une  activité  à  une  autre   Le  passage  entre  deux  activités  requiert  un  Intent.  Un  Intent  est  un  conteneur  d’information.  Il  permet  de  passer   des  messages  entre  deux  activités.  L’activité  appelante  pourra  ainsi  transmettre  des  informations  à  l’application  appelée,   ainsi  qu’au  système  Android.     Il  existe  plusieurs  manières  de  créer  un  Intent.  Nous  allons  choisir  la  suivante  :   Intent myIntent = new Intent(<contexte>, <classe de l’activité cible>); Pour  démarrer  une  autre  activité,  il  faut  lancer  la  méthode  startActivity(Intent  i)  de  la  classe  Activity  initiale.     TAF-­‐‑6  :   Configurer   le   comportement   de   votre   bouton   pour   qu’il   lance   l’activité   ClicActivity,   et   observez   le   résultat.   Indications  :     1. Dans  le  Intent,  le  contexte  sera  HelloworldActivity.this,  et  la  classe  cible  sera  ClicActivity.class.   2. Pour  démarrer  l’activité,  la  méthode  startActivity  doit  être  appelée  à  partir  de  l’objet  HelloworldActivity.this   II.  2.  5.   Récupération  de  messages  entre  activités    Pour  passer  un  message  à  une  activité,  on  ajoute  des  Extras  aux  Intents.  Par  exemple  :   myIntent.putExtra(<id>, <chaîne>); va  passer  la  chaîne  de  caractère  chaîne  dans  une  variable  appelée  id  à  l’activité  cible  de  l’Intent.      Dans  l’activité  cible,  on  récupère  cet  Extra  en  utilisant  :   getIntent().getStringExtra(<id>) ; TAF-­‐‑7  :  Modifier  vos  activités  de  manière  à  ce  que  :   1. L’utilisateur  saisit  une  chaîne  dans  le  champ  de  saisie  de  HelloworldActivity   2. L’utilisateur  clique  sur  le  bouton   3. ClicActivity  est  chargée,  et  le  champs  de  texte  TextView  contient  la  chaîne  qu’a  saisi  l’utilisateur.     III. Homework   Installer  l'ʹenvironnement  Android  chez  vous.  Créer  une  application  contenant  :   MME.  LILIA  SFAXI                  2011/2012  
  • 13. TP2  :  Initiation  à  la  Programmation  avec  Android   12         -­‐‑ Deux  champs  de  texte     -­‐‑ Un  bouton  fermer  qui  permet  de  fermer  définitivement  l’application   -­‐‑ Un   bouton   concaténer   qui   va   charger   une   deuxième   activité.   Cette   dernière   va   afficher   les   deux   chaînes   concaténées.     MME.  LILIA  SFAXI                  2011/2012