0% ont trouvé ce document utile (0 vote)
56 vues6 pages

Examen Développement Mobile S1 2022/2023

Transféré par

omarayedi423
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
56 vues6 pages

Examen Développement Mobile S1 2022/2023

Transféré par

omarayedi423
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Institut Supérieur d'Informatique et de Mathématiques de Monastir ISIMM

Devoir Surveillé – S1 – 2022/2023


Matière : Enseignant :
Filière : 1ère Ing. Inf. Malek BEN SALEM
Développement Mobile
Date : 12 / 11 / 2022 Nbr de Crédits : 3 Coefficient : 1,5 Documents autorisés : Non

Durée de l’examen : 1h Régime d’évaluation : Mixte


Nombre de pages : 06
EX (50%) + DS (20%) + TP (25%) + OR (5%)

Nom & Prénom : …………………………………………………………………………...……………………... Salle : ………………………………………..


Matricule :……………..………………………………….Signature :……………..…………….…………….. N° de place : …………………………….

NOTE : Répondre directement sur les feuilles de l’examen /
Note
20
Exercice 1 (6 points):
Encercler la ou les lettres correspondantes à la ou les bonnes réponses.

1. Quelle est la ou les affirmations correctes relatives à la classe R ?

a. R est une classe générée et mise à jour automatiquement par l’IDE utilisé.
b. La classe R permet de sauvegarder les identifiants des objets de l’application.
c. Tout identifiant, généré automatiquement dans la classe R, permet de référencer
une ressource ajoutée à l’application.

2. Quelle est la ou les affirmations correctes relatives aux activités Android ?

a. Une activité présente toujours une vue à l'utilisateur,


b. Une activité doit héritée toujours de la classe AppActivity
c. Une vue peut être associée à une activité.

3. Quelle est la ou les affirmations correctes relatives aux systèmes d’exploitation mobiles ?

a. Un système d'exploitation mobile est un système d'exploitation embarqué conçu


pour fonctionner sur un appareil mobile.
b. Un système d'exploitation mobile est un système d'exploitation temps réel conçu
pour fonctionner sur un appareil distribué.
c. Un système d'exploitation mobile se concentre sur la gestion de réseau interne.
d. Un système d’exploitation mobile est l’ensemble des programmes responsables de la
gestion de plusieurs fonctionnalités telles que la gestion des processus, la gestion
des E/S et le partage des ressources d’un dispositif mobile.

P. 1/6
Ne rien écrire ici

4. Quelle est la ou les affirmations correctes sur le système d’exploitation Android ?

a. Android est un système d'exploitation temps réel et open source.


b. Android est un système d'exploitation conçu spécifiquement pour des systèmes embarqués légers
comme smartphones.
c. Android s'appuie sur le langage Java et le Software Development Kit (SDK) qui permet d'avoir
un environnement de développement facilitant la tâche du développeur.
d. Le kit de développement (SDK) inclu des exemples, de la documentation, une API de
programmation du système et à un émulateur pour tester ses applications.

5. Quelle est la ou les affirmations correctes relatives à « Android runtime » d’Android ?

a. La composante « Android Runtime » compile le bytecode vers le natif.


b. Le « Dalvik » est le nom de la machine physique open-source utilisée sur les systèmes Android.
c. Le « Dalvik » exécute des fichiers « .exe ».
d. Toutes les applications partagent la même machine Dalvik.
e. Dalvik n'est pas compatible avec une JVM du type Java SE ou même Java ME.
f. La librairie d'accès (DVM) est redéfinie partiellement par Google.

6. Quelle est la ou les affirmations correctes relatives aux couches d’Android ?

a. L’architecture d’Android est composée des couches : applications, application


frameworks, librairies, linux kernel
b. La couche « Application Frameworks » permet au programmeur de construire de
nouvelles applications.
c. La couche « Applications » consiste en les applications utilisateurs (gestion des
drivers, gestion des processus).

P. 2/6
Exercice 2 (8 points):
Soit une activité Android « CounterActivity», associée à une vue définie dans le layout
« activity_counter.xml », permet l’incrémentation du nombre des mammifères qu’ils soient
des lions ou bien des éléphants. Elle est présentée par la figure 1. Elle est composée de :

- Un TextView ayant l’étiquette « Compteur de mammifères », son id est « titre_tv ».

- Un bouton radio ayant l’étiquette « Lions », son id « lions_rb ».

- Un bouton radio ayant l’étiquette « Eléphants », son id « elephants_rb ».

- Un bouton ayant l’étiquette « Compter », son id est « compter_bn ». Il permet


l’incrémentation du nombre des lions ou des éléphants.
- Un TextView ayant l’étiquette « Nombre des lions= », son id est « lions_tv ».

- Un TextView ayant l’étiquette « Nombre des éléphants= », son id est « elephants_tv ».

- Un TextView ayant l’étiquette « i », i est le nombre des lions, son id est «nb_lions_tv».

- Un TextView ayant l’étiquette «j», j est le nombre des éléphants, son id est

«nb_elephants_tv ».

- Un bouton ayant l’étiquette « Quitter », son id est « quitter_bn ». Il permet de fermer


l’application mobile.

Figure 1. CompteurActivity Figure 2. Avec incrémentation des lions Figure 3. Avec incrémentation des
k éléphants

P. 3/6
Votre Réponse :

public class CounterActivity extends AppCompatActivity {


// Les attributs sont déclarées dans l’ordre de leurs apparitions dans
// la vue de l’activité :
private TextView titre_tv;
private RadioButton lions_rb;
private RadioButton elephants_rb;
private Button compter_bn;
private TextView lions_tv;
private TextView elephants_tv;
private TextView nb_lions_tv;
private TextView nb_elephants_tv;
private Button quitter_bn;
@Override
protected void onCreate(Bundle savedInstanceState) {
…………………………………………………………………………… ;
set…………………………………………………………………………… ;
this.titre_tv = ………………………………………………………… ;
this.elephants_rb = ………………………………………..………… ;
this.lions_rb = ………………………………………………………… ;
this.compter_bn = ……………………………………………………… ;
this.lions_tv = ………………………………………………………… ;
this.elephants_tv = …………………………………………………….. ;
this.nb_elephants_tv = ………………………………………………… ;

P. 4/6
this.nb_lions_tv = …………………………………………………… ;
compter_bn.setOnClickListener(………….……………………………( ) {
@...................................
public void …………………..(……………………… v) {
int val = …………………..(nb_elephants_tv……….….( ).toString( ));
if (elephants_rb…………………………( ))
nb_elephants_tv.set……………([Link](val + 1));
else
nb_lions_tv.set………………(…………………………(val + 1));
} });
quitter_bn = ……………………………………………………. ;
quitter_bn.set…………………….(new ……………………………..( ) {
@.................................
public void onClick(View view) {
………………………………… ; //pour fermer l’application.
}
}); } }

Exercice 3 (6 points):
Soit une deuxième activité Android « CounterActivity2 », qui permet de générer la même
vue que l’activité « CounterActivity », définie dans l’exercice 2, mais sa vue est définie
entièrement dans la même classe Java. Ecrire le code source relatif à cette deuxième
activité sans programmer l’action sur les boutons « compter » et « quitter ».

P. 5/6
Votre Réponse :

public class CounterActivity2 extends AppCompatActivity {


// Notez bien que l’ordre de déclaration de ces objets de type View est
l’ordre d’apparition dans la vue de l’activité.
// Créer les chaînes de caractères ici dans le code Java en cas de
// besoin.
private TextView titre_tv; private RadioButton balles_tennis_rb;
private RadioButton balles_golf_rb; private Button compter_bn;
private TextView balles_tennis_tv; private TextView nb_tennis_tv;
private TextView balles_golf_tv; private TextView nb_golf_tv;
protected void onCreate(Bundle savedInstanceState) {

Bon travail.
P. 6/6

Vous aimerez peut-être aussi