Architecture des systèmes mobiles



Documents pareils
TP SIN Programmation sur androïde Support : eclipse

Warren PAULUS. Android SDK et Android x86

TP au menu «UI ANDROID»

Outils, langage et approche Android Une introduction. Nicolas Stouls lyon.fr

Créer des applications Android

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

Développement sous Android

Encore plus de widgets et de conteneurs

SOMMAIRE

Projet Android (LI260) Cours 2

De Java à Android version 0.1

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Premiers Pas en Programmation Objet : les Classes et les Objets

Tutorial pour une application simple

Programmation Android L3 informatique

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

TP1 : Initiation à Java et Eclipse

Programmer en JAVA. par Tama

TD/TP PAC - Programmation n 3

Android en action. Abdelkader Lahmadi Université de Lorraine

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

Package Java.util Classe générique

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

Android et le Cloud Computing

Développement web et mobile

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

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

Education Delivery Intelligent Tool

Corrigés des premiers exercices sur les classes

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

TD/TP PAC - Programmation n 3

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

Projet de programmation (IK3) : TP n 1 Correction

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

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

Langage Java. Classe de première SI

TP2 : Client d une BDD SqlServer

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

TP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet

Les fondamentaux du développement d applications Java

1.3 Gestion d'une application

Les connexions sans fil avec Android. JMF (Tous droits réservés) 1

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

Programmation Par Objets

Programmation avec des objets : Cours 7. Menu du jour

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN

Développement Logiciel

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.

Architectures Mobiles

as Architecture des Systèmes d Information

Programmation mobile avec Android

Android UIThread, Thread, Handler et AsyncTask

Chapitre 10. Les interfaces Comparable et Comparator 1

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Arbres binaires de recherche

Création d un service web avec NetBeans 5.5 et SJAS 9

JADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Les structures de données. Rajae El Ouazzani

Corrigé des exercices sur les références

Utilisation d objets : String et ArrayList

Java Licence Professionnelle CISII,

RMI le langage Java XII-1 JMF

Serveur d'archivage 2007 Installation et utilisation de la BD exist

SPECIFICATIONS TECHNIQUES : Gestion des Médicaments et des commandes de médicaments

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Plan du cours. Historique du langage Nouveautés de Java 7

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Programme Compte bancaire (code)

FICHIERS ET DOSSIERS

Héritage presque multiple en Java (1/2)

Java Licence Professionnelle Cours 7 : Classes et méthodes abstraites

Java Licence professionnelle CISII,

Un ordonnanceur stupide

Développement sous Android

AppInventor. Master 2 Informatique, E-services Université des Sciences et Technologies de Lille 1

Le prototype de la fonction main()

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

Début de la procédure

TD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting

Les arbres binaires de recherche

2010/2011 [PROJET TEXT TO SPEECH] Génie Logiciel des Interactions Homme-Machine. Germain Costenobel Pierre Barois

Documentation CAS à destination des éditeurs

Cours 1: Java et les objets

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Derrière toi Une machine virtuelle!

Documentation Analyse SEM

LimeSurvey. Pour obtenir un compte sur le LimeSurvey de l Université de Genève, remplissez le formulaire de demande en ligne.

Tutoriel Android - TP de prise en main

Keyyo Unify Application de téléphonie intégrée pour Salesforce

Auto-évaluation Programmation en Java

Comparaison entre les applications natives et les web apps dans le domaine des Smartphones

Introduction au langage Java

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

Le hub d entreprise est une application de déploiement des applications mais aussi un outil de communication

Transcription:

Architecture des systèmes mobiles contrôle 1 - année 2013 durée 1h30 seul document autorisé : les polycopiés du cours Voici l application Chronomètre : Le premier clic sur le bouton enregistre un premier instant, puis le second clic un second instant. Le 3éme clic calcule la différence horaire entre les 2 instants en secondes. Enfin le clic de «fin» actuellement remet à 0 l'application. le manifeste <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="df.exam1" android:versioncode="1" android:versionname="1.0" > <uses sdk android:minsdkversion="8" android:targetsdkversion="17" /> <application android:allowbackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/apptheme" > <activity android:name="df.exam1.chronometreactivity" android:label="@string/app_name" > <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent filter> <action android:name="df.exam1.action.get_duree" /> <category android:name="android.intent.category.default" />

</intent filter> </activity> </application> </manifest> res/values/string.xml : <resources> <string name="app_name">datetime</string> <string name="action_settings">settings</string> <string name="hello_world">hello world!</string> <string name="bouton2">temps écoulé en secondes</string> <string name="bouton1">enregistrer le temps</string> <string name="bouton3">fin</string> </resources> res/layout/activity_chronometre.xml : <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:orientation="vertical" > android:id="@+id/affichage" android:text=" " /> android:id="@+id/bouton" android:text="@string/bouton1" android:onclick="enregistretemps" /> src/df/exam1/chronometreactivity.java : package df.exam1; import java.util.date; import android.os.bundle; import android.app.activity; import android.content.intent; import android.text.format.time; import android.view.menu; import android.view.view; import android.widget.button; import android.widget.textview; public class ChronometreActivity extends Activity { private int nbreclic = 0; private Date date1 = null; private Date date2 = null; private int tempsecoule = 1; private TextView affichage; private Button bouton; protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chronometre); affichage = (TextView) findviewbyid(r.id.affichage); bouton = (Button) findviewbyid(r.id.bouton); bouton.settext(r.string.bouton1); affichage.settext(""); nbreclic = 0; date1 = null; date2 = null; tempsecoule = 1; public void enregistretemps(view v) { if (++nbreclic == 1 ) { date1 = new Date(); affichage.settext((charsequence) date1.tostring());

else if (nbreclic == 2 ) { date2 = new Date(); affichage.settext((charsequence) date2.tostring()); bouton.settext(r.string.bouton2); else if (nbreclic == 3 ) { tempsecoule = (int) (date2.gettime() date1.gettime())/1000; affichage.settext((charsequence) (""+tempsecoule)); bouton.settext(r.string.bouton3); else { bouton.settext(r.string.bouton1); affichage.settext(""); nbreclic = 0; date1 = null; date2 = null; tempsecoule = 1; Voici l'application Jogger : L'application propose au jogger (joggeuse) de se chronométrer ou d'écouter de la musique... Voire, de se cultiver... autre chose que les muscles! Au passage, admirez comment l'institution universitaire colle à la mode. le manifeste <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="df.exam4" android:versioncode="1" android:versionname="1.0" > <uses sdk android:minsdkversion="8" android:targetsdkversion="17" /> <application android:allowbackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/apptheme" > <activity android:name="df.exam4.joggeractivity" android:label="@string/app_name" > <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" />

</intent filter> </activity> </application> </manifest> res/layout/activity_jogger.xml : <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:orientation="vertical" > android:text="je joggue donc je suis!" /> <LinearLayout android:orientation="horizontal" > android:onclick="chronometre" android:text="chronometrer" /> android:id="@+id/affichagetemps" android:text=" " /> android:onclick="ecoutermusique" android:text="ecouter Musique" /> <LinearLayout android:orientation="horizontal" > android:onclick="secultiver" android:text="se Cultiver" /> <EditText android:id="@+id/motcle" android:text="mot clé" /> src/df/exam4/joggeractivity.java : package df.exam4; import android.net.uri; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.menu; import android.view.view; import android.widget.textview; public class JoggerActivity extends Activity { private static final int REQUEST_CODE = 666; private TextView affichagetemps; private TextView motcle; protected void oncreate(bundle savedinstancestate) {

super.oncreate(savedinstancestate); setcontentview(r.layout.activity_jogger); affichagetemps = (TextView) findviewbyid(r.id.affichagetemps); motcle = (TextView) findviewbyid(r.id.motcle); public void chronometre(view v) { //////// public void ecoutermusique(view v) { ///////// public void secultiver(view v) { ///////// Question A : Compléter le code de ChronometreActivity pour qu'elle puisse retourner le temps écoulé à une activité appelante. Question B : Compléter la méthode chronometre() de JoggerActivity pour qu'elle lance l application ChronometreActivity par un appel implicite. Question C : Quel code manque t'il à l application JoggerActivity pour qu'elle récupère la valeur du temps écoulé retourné par l'appel à ChronometreActivity? Question D : Compléter la méthode ecoutermusique() de JoggerActivity pour qu'elle lance l application musicale par un appel implicite : action MAIN et category APP_MUSIC. Question E : Compléter la méthode secultiver() de JoggerActivity pour qu'elle lance l application un navigateur web par un appel implicite en lui fournissant l'url http://fr.wikipedia.org/wiki/mot_fourni où mot_fourni est récupérée de l'editview. Question F : Le clic sur le bouton «se cultiver» plante l application JoggerActivity. Pourquoi? Quelle correction?