Home

sujet

image

Contents

1. int v 54 ne in y o p Se int f factorielle n Log i TAG n f avec ceci un peu plus loin private int factorielle int n inten i GaS D int fnmi factorielle n 1 r n fnmi else IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 r return r J R glez LogCat pour n afficher que des messages info au moins Mettez un point d arr t sur la premi re instruction int v 54 puis lancez en mode mise au point Puis essayez les modes suivants e Ligne par ligne appuyer sur F6 step over pour ex cuter la prochaine ligne Suivez les modifications des variables dans la fen tre Variables Voyez que l appel factorielle a t fait pleine vitesse e Instruction par instruction avec la touche F5 step into elle rentre dans les appels aux m thodes Alors pour factorielle a va un moment mais c est p nible Vous pouvez couper court avec F7 step return Supprimez l ex cution en cours l aide du bouton Terminate carr rouge dans la barre d outils 4 2 Mise en place d un bug Normalement c est l inverse qu on fait Les bugs on les d gomme L on va cr er un bug et essayer de voir si on peut le retrouver Rajoutez ceci juste apr s lt TextView dans res layout activity main xmloures layout fragment main a sera expliqu dans le cours de la semaine 2 t lt TextView android id id texte gt Net
2. Affichage d un message Ouvrez le source MainActivity java et trouvez la m thode onCreate Cela doit ressembler au source suivant Compl tez le avec les instructions qui permettent de faire afficher un message dans la fen tre LogCat import android util Log public class MainActivity extends Activity public static final String TAG hello verride protected void onCreate super onCreate Log i TAG Salut IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 4 1 Mise au point Nous allons exp rimenter quelques aspects du d bogueur int gr dans Eclipse Ce n est pas sp cifique Android mais est disponible pour tout projet Eclipse Ici on va tre un peu limit s par la petitesse du programme On va seulement pouvoir d couvrir quelques techniques tr s utiles A chaque fois que vous modifiez un source Java le d bogueur vous signale qu il doit se d connecter de la tablette En effet si vous changez le source ce n est plus ce qui est ex cut sur la tablette donc la mise au point ne peut pas continuer 4 1 1 Lancement en mode debug C est ce bouton qui lance l ex cution en mode mise au point En principe il fait basculer l interface dans la perspective Debug C est une disposition des fen tres un peu diff rente pour faciliter la mise au point Si elle n appara t pas vous pouvez demander de l afficher c est en haut et
3. IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 1 Notation des TP Chaque semaine vous allez devoir rendre une partie de votre travail sur Moodle Par exemple vous devrez rendre un fichier xml un source ou une application enti re Ces documents seront valu s dans le cadre de la note de TP Ainsi il n y aura pas un TP not final mais de multiples travaux faire dans le cadre d un contr le continu 2 D couverte du SDK Android On va commencer par les outils de d veloppement le Software Development Toolkit d Android et Eclipse 2 1 Software Development toolKit SDK Le SDK Android a t t l charg sur C appli info Programmation eclipse kepler AndroidSDK sdk Allez voir ce qu il y a dedans plusieurs dossiers dont e tools qui contient les outils de gestion du SDK et des AVD Cependant l IUT vous ne pourrez pas les lancer d ici directement Vous devrez passer par Eclipse e platform tools qui contient quelques programmes utiles comme adb exe et sqglite3 exe 2 2 Eclipse Lancez Eclipse Kepler Si le plugin Android n a pas encore t configur vous devrez fournir le chemin du SDK dans les pr f rences d Eclipse onglet Android Il faut donner le chemin complet qui permet d arriver au dossier du SDK l o il y a le sous dossier tools Avant de commencer travailler on va modifier une pr f rence concernant l encodage des fichiers Ou
4. droite cliquez suir le bouton puis choisissez Debug dans la liste des perspectives amp Javal Debug Voici les boutons utiles pour mettre le programme au point De gauche droite demander de continuer l ex cution pleine vitesse jusqu au prochain point d arr t mettre en pause l ex cution arr ter totalement le programme d connecter adb ex cuter une instruction en entrant dans les m thodes ex cuter la ligne suivante sans rentrer dans les m thodes ex cuter le reste de la m thode vitesse normale puis s arr ter apr s son return Nous n emploierons pas les autres boutons oi H z rs La mise au point repose sur ces deux techniques e Lancer en mode normal et attendre que a se plante L ex cution s arr te alors exactement sur l instruction qui est mauvaise par exemple celle qui d clenche une NullPointerException e Mettre un point d arr t avant l endroit qu on pense mauvais puis ex cuter ligne par ligne pour voir ce qu il y a dans les variables et guetter l erreur 4 1 2 Placement d un point d arr t Double cliquez dans la marge gauche au d but de la m thode onCreate La fen tre Breakpoints liste tous les points d arr ts que vous avez plac N en mettez pas trop dans un programme vous aurez du mal suivre tout ce qui peut se passer Mettez vos m thodes au point les unes apr s les autres pas tout en m me temps IUT de Lannion Programmation Android P Nerzic Dept Info
5. e Et ensuite insister avec continue pour que les messages d erreur s affichent Voici maintenant un autre bug aussi fr quent amp Button bouton Button findViewById R id texte bouton setText Ca marche Cette fois R id texte est un identifiant mais ce n est pas celui d un Button il va y avoir une erreur de conversion de classe ClassCastException L galement le mode debug n arr te pas l ex cution exactement l o elle se produit 5 Travail rendre Vous devrez d poser src MainActivity java sur le d p t Moodle la fin du TP TextView est une superclasse de Button mais on n a pas le droit de convertir de la superclasse vers une sous classe Seul l inverse est possible
6. e Si vous tes sur un petit cran cochez Scale display to real size avec Screen size 16 Monitor dpi 56 ces valeurs permettent de r duire la fen tre de AVD 75 e ne cochez pas Wipe user data sauf si vous voulez tout supprimer sur la tablette y compris vos pr f rences Les mises jour sont bloqu es l IUT afin de ne pas d synchroniser le plugin du SDK Si on laissait faire les mises jour automatiquement vous seriez rapidement bloqu e dans les TP plus rien ne se compilerait IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 Notez qu elle met beaucoup de temps devenir disponible parce que c est un mulateur de machine comme VMware Vous devrez faire attention ne pas la fermer chaque fois Modifiez les pr f rences de cette tablette Pour cela vous avez le bouton MENU ou la touche F2 pour acc der aux pr f rences Relire le cours pour le mode d emploi e Mettez la en langue fran aise e Enlevez le verrouillage de l cran en cas d inaction NB faites attention ne pas mettre cet AVD en veille car cela ferait cr er une image de la RAM de 512Mo dans votre compte et exploser votre quota disque 2 3 Android Debug Bridge ADB Avant de passer la programmation on va communiquer avec cette tablette virtuelle Ouvrez une fen tre cmd exe Plusieurs commandes sont essayer Elles sont expliqu es dans le cours e adb devices e adb shell Da
7. ns cette connexion la tablette tapez 1s c est une arborescence Unix cd data data 1s voici la liste des paquetages Java des logiciels install s Consulter cette page qui explique comment rendre la carte sd virtuelle inscriptible Actuelle ment elle est en lecture seule su mount o rw remount rootfs chmod 777 mnt sdcard exit Maintenant la carte m moire sd peut tre modifi e mkdir mnt sdcard Pictures cr e un dossier sur la carte sd virtuelle mettez un autre nom s il existe d j exit pour sortir du shell et revenir dans Windows e adb pull init rc ce fichier sp cifie la s quence de d marrage de la tablette comme etc rcS d et etc rc2 d4 sur Ubuntu e adb push C Windows Web Wallpaper Landscapes img7 jpg mnt sdcard Pictures envoyez une image quelconque sur la tablette dans le dossier correspondant au stockage interne sdcard que vous avez cr auparavant L image sera visible dans l application Gallerie mais peut tre apr s un red marrage de la tablette Vous voyez la ressemblance de adb avec des outils comme telnet ssh ftp 3 Premi re application 3 1 Cr ation Utilisez l assistant de cr ation d une application Android pour cr er votre premi re application e Choisissez un niveau d API qui corresponde ce qui est install dans le SDK 17 e Laissez l ic ne propos par d faut ou alors trouvez une image qui ait la taille demand e e Ch
8. oisissez une application minimale Blank Activity 3 IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 e Cochez la cr ation de la classe d activit MainActivity Eclipse cr e plusieurs dossiers et plusieurs fichiers Allez voir ce qu il y a dans src et res Par exemple dans res il y a plusieurs dossiers drawable qui contiennent diff rentes versions de l ic ne d application de diverses tailles pour s adapter des crans diff rents Dans src les sources sont group s par paquetage gen et bin sont reconstruits automatiquement d s que vous changez quelque chose Sur certains postes Eclipse cr e une application plus complexe Vous trouverez deux fichiers dans res layout application main xml et fragment main xml et d autre part la classe MainActivity est plus complexe 3 2 Ex cution Le lancement de l application est simple La premi re fois il faut demander ex cuter l application en tant que Android Application Les fois suivantes a sera m moris dans ce qu Eclipse appelle une configuration de lancement voir le menu d roulant Launch configurations qui appara t quand on clique sur la fl che vers le bas dans la figure 2 ci dessous D Figure 2 Bouton Run As Ensuite s il n y a aucune tablette connect e ni AVD en cours Eclipse vous demande quel AVD il faut lancer Il en faut un qui corresponde au niveau d APT de votre application 4
9. pe de tablette Choisissez l onglet de droite Cherchez 7 WSVGA tablet dans la liste Cliquez sur le bouton Clone Puis dans cette nouvelle fen tre changez Buttons de software hardware Changez le nom de ce type de tablette en My 7 puis cliquez sur Clone Voici donc un nouveau type d appareil Vous pourriez d finir un mod le correspondant votre smartphone Cr ez une tablette ayant les caract ristiques suivantes e Device votre type de tablette e Target Android 4 2 2 level 17 e CPU ARM mais sur Windows ATOM serait un bien meilleur choix e cocher Hardware keyboard present e choisir Skin with dynamic hardware controls e RAM 1024 Mo mais c est votre PC qui d cide y a t il assez de RAM pour Windows Eclipse et AVD et Heap 32 Mo e Internal Storage 128 Mo pour vos applications et donn es e Carte SD mettre une taille de 9Mib e Emulation Use Host GPU PIUT vous allez devoir faire une manip bizarre Les d finitions de tablettes virtuelles sont mises dans des fichiers du dossier android de votre compte Le probl me c est que vous avez android dans les deux endroits et a pose un gros probl me les fichiers sont mis dans l un mais cherch s dans l autre la place e Vous devrez faire cela chaque fois que vous modifiez la configuration d un AVD Lancez cette tablette virtuelle bouton Start quand elle est s lectionn e Dans le dialogue qui arrive choisissez
10. rmatique TP1 Prise en main 2014 15 4 1 3 Examen de la pile d appels Lorsque le programme s arr te soit sur une erreur non pr vue soit sur un point d arr t Eclipse affiche la pile d ex cution imbrication des appels de m thodes dans la fen tre Debug figure 3 Debug X Package Explorer 5 Outline amp DalvikVM localhost 8630 n Thread lt 1 gt main Suspended breakpoint at line 21 in MainActivity E lt VM does not provide monitor information gt MainActivity Activity performCreate Bundle line 5008 Instrumentation callActivityOnCreate Activity Bundle line 1079 ActivityThread performLaunchActivity Activity Thread ActivityClientRecord Intent line 2023 ActivityThread handleLaunchActivity ActivityThread ActivityClientRecord Intent line 2084 ActivityThread access 600 ActivityThread ActivityThread ActivityClientRecord Intent line 130 ActivityThread H handleMessage Message line 1195 ActivityThread H Handler dispatchMessage Message line 99 Looper loop line 137 Figure 3 Fen tre Debug Une grande partie des appels ne viennent pas de votre application mais du syst me Android Un autre probl me est qu une application Android implique plusieurs threads Parfois il faut arriver comprendre quel thread plante Ce n est pas forc ment lt 1 gt main comme ici 4 1 4 Ex cution pas pas Rajoutez ceci la fin de la m thode onCreate de MainActivity amp
11. toyez le projet Menu Project Clean pour mettre jour les identifiants Puis rajoutez ceci la fin de la m thode onCreate de MainActivity apr s le setContentVieu 4 as TextView texte TextView findViewById R drawable ic launcher texte setText a marche R drawable ic_launcher est un identifiant mais pas celui du TextView alors que va t il se passer C est une erreur assez fr quente Il est important de savoir la r parer Vous devez 1 Configurer LogCat pour ne voir que les messages d erreur vider LogCat avant chaque tentative 2 Lancer le programme en mode normal pleine vitesse et voir le popup D application Hel loWorld s est arr t e Qu est ce qui est crit dans LogCat en rouge a vous dit o a s est plant mais c est dans une fonction du syst me ActivityThread performLaunchActivity T IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 Il faut chercher l autre explication plus bas Caused by java lang NullPointerException et juste en dessous la ligne probl matique nom de fichier n de ligne dans votre programme Vous pouvez double cliquer sur cette ligne de LogCat pour aller dans le source 3 En fait en mode mise au point a ne s arr te pas sur la ligne probl matique donc il faut poser un point d arr t sur le d but de la m thode onCreate puis tracer ligne par ligne jusqu celle qui pose un probl m
12. vrez le menu Window Preferences Dans cette bo te de dialogue d pliez General Workspace et tout en bas dans Text File Encoding choisissez UTF 8 Cela va permettre de pouvoir changer des fichiers avec Unix sans souci d accents et autres Vous pouvez aussi choisir Unix pour New text file line delimiter Remarquez les deux ic nes dans la barre d outils au premier quart gauche Il y en a une pour lancer le gestionnaire de SDK Android SDK Manager et l autre pour le gestionnaire d AVD Android Virtual Device Manager g Figure 1 Barre d outils Android dans Eclipse 2 2 1 Gestionnaire de SDK Regardez quels paquets ont t install s les diff rentes versions d Android et les outils Le gestionnaire va automatiquement vous proposer d installer les mises jour et la derni re version IUT de Lannion Programmation Android P Nerzic Dept Informatique TP1 Prise en main 2014 15 du SDK mais ne le faites past Vous ne devrez le faire que chez vous et condition de mettre jour le plugin Eclipse simultan ment En principe le SDK versions 15 Android 4 0 3 et 17 Android 4 2 2 sont install s 2 2 2 Android Virtual Device AVD L autre gestionnaire sert cr er des mulateurs de tablettes Vous avez un onglet Device Definitions pour les types de tablettes et un onglet Android Virtual Devices affich par d faut pour les tablettes que vous avez cr es On va commencer par modifier une d finition de ty

Download Pdf Manuals

image

Related Search

sujet sujeto y predicado sujeto oro 24 sujeto en ingles sujeta pelota golf sujeta tablet ipad sujet de dissertation sujeto obligado sujet exam sujet 3am sujeta papeles sujet bac 2025 sujetador halter deportivo sujeto significado sujeta documentos sujeta hebilla cinturon coche sujetador deportivo sin costuras sujet brevet 2025 sujeto cognoscente sujetadores deportivos alto impacto sujeta copas chains lanyards sujeto in english sujetador de documentos sujeta calcetines para hombre sujets delf b2 sujetadores de cables

Related Contents

Acer Veriton N 2110G  AN-SV100T Operation-Manual Installation-Manual GB  

Copyright © All rights reserved.
Failed to retrieve file