Vous êtes sur la page 1sur 51

Université M'HAMED BOUGARA de Boumerdès

Faculté des sciences, Département d'informatique

Développement d'applications mobiles


Introduction

Réalisé par Mr. BITIT Rahmoune

1 UMBB/FS/DEP-INFO 23/04/2023
Contenu de la matière

 Les systèmes d’exploitation mobiles (iOS, WindowsPhone,


Android)
 Présentation de la plate-forme Android
 L’environnement de développement
 Structure et composants des applications mobiles
 Construction de l’interface utilisateur
 Utilisation des ressources : XML, images, fichiers, …
 Programmation mobile ( JSON, SQLite, ….)
 Déploiement d’une application mobile

2 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Références
 Android 5 Programming by Example, Kyle Mew; Packt Publishing 2015.
 M. Dalmau, "Développement d'applications pour Android"
 Pierre Nerzic, "Programmation mobile avec Android"
 Jean-FrancoisLalande, "Développement Android«
 https://developer.android.com/develop/index.html
 https://www.tutorialspoint.com/android/
 https://www.javatpoint.com/android-tutorial
 http://www.tutos-android.com/
 https://android-developers.googleblog.com/
 http://www.tutos-android.com/
 ….

3 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Les systèmes d’exploitation mobiles

4 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Introduction
 Les technologies mobiles (les téléphones mobiles et les Tablettes) sont
devenus des outils indispensables dans la vie quotidienne.
 Les Smartphones/tablettes sont considérés comme des petits
ordinateurs (ils peuvent remplacer dans différentes situations,
l’ordinateur portable)
 ils deviennent de plus en plus populaires grâce aux différents systèmes
d’exploitation mobile qui ne cessent de se développer, tel que :
Android, iOS etWindows Phone,
 Les applications mobiles sont devenus un moyen essentiel de création
de nouveaux services à destination des mobinautes.

5 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Smartphones ?
 C’est-à-dire des « téléphones intelligents ».
 Sont généralement tactiles, bien que certains modèles proposent
encore un clavier (certains modèles BlackBerry par exemple).
 En plus de téléphoner et envoyer des messages, les smartphones
permettent de faire bien d’autres choses grâce à des applications :
accéder à Internet, lire et envoyer des mails, écouter de la
musique, regarder des films, jouer, prendre des photos et vidéos...
 L’ajout d’applications permet de personnaliser l’appareil selon le
besoin

6 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Smartphone, Phablette, Tablette ?

7 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 C’est quoi un OS mobile ?

 Un téléphone mobile dispose d’une plate-forme qui contrôle


toutes ses fonctionnalités. Ceci est connu comme un système
d’exploitation mobile.
 Généralement connu sous le nom d’OS mobile, il s’agit d’un
système d’exploitation qui exploite un appareil mobile.
 Il contrôle toutes les opérations de base de l’appareil mobile
comme option d’écran tactile, Bluetooth,Wifi, appareil photo ...
 Exemple: iOS, Windows Phone, Android, BlackBerryOS,
Symbian, ….

8 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les OS mobiles

Android de Google iOS d’Apple Windows Phone de


Microsoft
• Développé en 2007.
• Windows Phone est
• Il est devenu une • Dérivé de Mac OS apparu en 2010.
plateforme ouverte
en 2008 • Développé en 2007 • Successeur de
• OS gratuit et ouvert. • Utilisé dans des appareils Windows Mobile.
Apple.
• Des grands fabricants • Il ne trouve pas
utilisent Android dans beaucoup de place
leurs dispositifs. sur le marché.

9 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les OS mobiles
 Les applications Android ,iOS et MS phone sont programmés
dans des langages de programmation différents.

Kotlin
swift

10 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Parts de marché mondiales des OS Mobile

11 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Parts de marché mondiales des OS Mobile

12 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Les types d’applications mobiles

13 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les types d’applications mobiles
 Application Native
 Elle est développée sur-mesure en utilisant un langage natif (ex.
Java pour Android) et doit être adaptée à chaque système
d’exploitation.
 Une version différente pour chaque type de téléphone.
 Elle fonctionne de façon optimale.

 Application Web
 Conçue avec HTML et CSS.
 Créé pour être consulté à partir du navigateur internet d’un
smartphone
 Accessible depuis n’importe quelle périphérique mobile.
 Offre moins de fonctionnalités et de performances.

14 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les types d’applications mobiles

 Application hybride
 Il s’agit d’une application mobile qui fusionne entre les
caractéristiques de web application (développement en
HTML) et celles de l’application native.
 Elle est multiplateforme.
 Comparées aux applications natives, les applications hybrides
sont moins chères et plus rapides à développer mais offre
moins de performances.

15 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les types d’applications mobiles

16 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Présentation de la plate forme Android

17 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Introduction
2004: Android est issu du travail d'un startup
2005: le startup Android racheté par Google
2007: Création de l'OHA (Open Handset Alliance)
• C’est un consortium créé par Google réunissant des acteurs du marché de
technologies mobiles (constructeurs, opérateurs, éditeurs de logiciels).
• Le but est de développer des normes pour les appareils mobiles
11-2007 : Annonce officielle de la plateforme Android et sortie du premier SDK

18 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Introduction
• Android avait d'abord été conçu pour les smartphones et tablettes tactiles,
puis s'est diversifié dans des objets connectés comme les télévisions
(Android TV), les voitures (Android Auto), les ordinateurs (Android-x86)
et les smartwatch (Android Wear).
• La plate-forme Android offre:
• Un environnement de développement complet
• Machine virtuelle Dalvik
• Navigateur intégré
• Graphisme 2D et 3D
• Base de données SQLite
• CODEC audio et vidéo (MPEG4, MP3, AAC, PNG, …)
• Options matérielles : téléphonie GSM, caméra, GPS, Wifi, Bluetooth,

19 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Les versions Android
● Google publie la répartition d'utilisation des versions
● informations collectées via Google Play
– lien : http://developer.android.com/about/dashboards/index.html
● ici en date du 16/04/2019

20 UMBB/FS/DEP-INFO 2019-2020 23/04/2023


 Architecture de la plate forme Android

21 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Architecture de la plate forme Android
Applications
• Android est fourni avec un ensemble de programmes de base
(nommés applications natives) permettant d'accéder à des
fonctionnalités comme: les courriels, les SMS, le calendrier, les
photos, leWeb…
• Ces applications sont développées à l'aide du langage de
programmation Java
• Pour l'utilisateur final, c'est la seule couche accessible et visible

22 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Architecture de la plate forme Android

Le Framework (Application Framework)


• Offre aux développeurs la possibilité de créer des applications
extrêmement riches et innovantes
• Les développeurs sont libres de profiter du matériel, les
informations de localisation, les services d'arrière-plan, définir
des alarmes, ajouter des notifications, ...

23 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Architecture de la plate forme Android
Les bibliothèques (Libraries)
• Un ensemble de bibliothèques utilisées par de nombreux composants
de la plateforme Android.
• Accessibles au développeur par l'intermédiaire du framework Android
• Exemples:
Skia: Bibliothèque graphique 2D
OpenGL: Bibliothèque graphique 3D
SQLit: Stockage des données des applications
WebKit : Moteur de navigation Web (utilisée dans le navigateur)

24 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Architecture de la plate forme Android
Moteur d'exécution Android (Android Runtime)
• Dalvik VM:
• Fournit une machine virtuelle adaptée aux limitations des appareils
mobiles.
• Dalvik permet l'exécution simultanée de plusieurs applications
• Elle exécute du bytecode qui lui est dédié (le bytecode .dex)
• Apartir de la version Android 5, Dalvik a été remplacé par ART (Android
Run Time)

25 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


 Architecture de la plate forme Android
Noyau Linux (Linux Kernel)
• Android repose sur un noyau Linux qui gère
• Les services du système, la mémoire, les processus, les pilotes,...
• Le matériel, les capteurs (appareil photo, GPS, wifi…)
• Il agit d’une couche d'abstraction entre le matériel et le logicielle

26 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Université M'HAMED BOUGARA de Boumerdès
Faculté des sciences, Département d'informatique

Développement d'applications mobiles


Introduction

Réalisé par Mr. BITIT Rahmoune

27 UMBB/FS/DEP-INFO 2021-2022 Année universitaire 2021-2022 23/04/2023


Environnement de développement pour Android
(Android Studio, SDK Android, AVD Manager)

28 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Android Studio
• L'IDE officiel pour Android
• Il fournit les outils pour créer des applications sur chaque
type d'appareil Android.
• Disponible gratuitement sur le lien:
• https://developer.android.com/studio/index.html
Langage de développement : Java, Kotline, XML
• Certaines classes du JDK ne sont pas disponibles (ex. Swing)
Configuration requise
•Microsoft Windows 7/8/10 (64 bits) / Ubuntu 12.04 64 bits / Max OsX
•4 Go de RAM au minimum, 8 Go de RAM recommandés;
•4 Go d'espace disque recommandé (500 Mo pour IDE + 1,5 Go pour
Android SDK et image du système d'émulation)
•Pour un émulateur accéléré: système d'exploitation 64 bits
•Java Development Kit (JDK)
29 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
SDK Android (Software Development Kit) :
Est un ensemble d'outils logiciels destinés aux
développeurs, facilitant le développement d'un logiciel
sur la plateforme Android.
SDK Android fournit :
• Des librairies Java pour Android
• Des images du système Android
• Un émulateur pour tester les applications

Android Virtual Device (AVD) Manager:


Permet de lancer et exécuter l’application sur
un appareil virtuel qui émule le comportement
d’un appareil Android.

30 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


31 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
Installation de l’IDE :

1. Télécharger et installer le JDK (Java Development Kit) 64 bits


(Désinstallez des éventuelles versions antérieures du JDK)

2. Télécharger Android Studio. Il contient l’environnement de


développement, le SDK Android ainsi qu’un émulateur.
https://developer.android.com/studio/index.html

3. Lancez l’exécutable pour démarrer l’installation et suivez le wizard

Remarque:
• Lors du premier lancement, l’IDE télécharge automatiquement des
outils nécessaires pour la création et la compilation d’un projet Android
(SDK et Gradle)
32 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
Premier projet Android Studio
Création d’un nouveau projet: File/New/New Project

33 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Choix de la version Android

34 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Choix du type d’activité

35 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Introduire le nom de l’activité et de Layout

36 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Résultat de l’assistant de de création de projet

37 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Structure d’un projet Android
manifests : description de l’application

java : les sources, rangés par paquetage

ressources = fichiers XML et images de l’interface

Drawable: images, icônes utilisés dans l’interface

layout: interfaces graphiques

mipmap: images, icônes utilisés dans l’interface

values : valeurs de configuration, textes...

Gradle scripts : c’est l’outil de compilation du projet


38 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
Le code source Java

La méthode setContentView charge une interface sur l’écran.

39 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Le fichier AndroidManifest.xml

40 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Le fichier AndroidManifest.xml

<manifest> la racine du fichier


L'espace de noms android

Déclaration du package de l’application

android:versionCode : un nombre entier (positif) qui indique quelle est la


version actuelle de l'application.
N’est pas montré à l'utilisateur, mais considéré par le Play Store.
Si on met une application avec un code de version supérieur à celui de
l’ancienne, alors le Play Store considère que l'application a été mise à jour.

android:versionName : peut être une chaîne de caractères et sera montré à


l'utilisateur. Exemple android:versionName="Première version alpha - 0.01a"
41 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
Le fichier AndroidManifest.xml

La version d'Android (API 15) ou supérieure pour pouvoir utiliser cette


application (cette application ne sera proposée sur Google Play uniquement si un
utilisateur utilise cette version d'Android ou une version supérieure).

La version de SDK sur laquelle l'application a été conçu et testé.


i.e. à partir de cette version on pourra exploiter à fond l'application

La version d'Android ou inférieure pour pouvoir utiliser cette application

42 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Le fichier AndroidManifest.xml

Il décrit les attributs et les composants de l’application.


Par défaut, l’application n'a qu'un composant, l'activité principale.

Définition de l'icône, du nom et du thème


de l’application

Déclaration des activités

Indique que l’activité est le point


d’entrée de l’application
43 UMBB/FS/DEP-INFO 2020-2021 23/04/2023
Exécution de l’application sur un appareil réel
connectée par USB

1. Activer le mode développeur sur l’appareil Android


1) Rendez-vous dans les paramètres.
2) Allez dans À propos de l'appareil.
3) Appuyez sept (07) fois sur la case « Numéro de build », un message
s'affiche "Vous êtes maintenant un développeur".
4) Dans le menu des paramètres, on verra un nouveau sous-menu
« Options pour les développeurs »

44 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil réel
connectée par USB

45 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil virtuel
Création d’un appareil virtuel

46 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil virtuel
Création d’un appareil virtuel

3- Choisir un appareil virtuel

47 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil virtuel
Création d’un appareil virtuel

4- Choisir la version de l’OS Android

48 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil virtuel
Création d’un appareil virtuel

Nom de l’appareil virtuel

Paramètres Avancés

49 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application sur un appareil virtuel
Création d’un appareil virtuel

Paramètres Avancés

50 UMBB/FS/DEP-INFO 2020-2021 23/04/2023


Exécution de l’application

2. Sélectionner un appareil
Android réel ou virtuel

51 UMBB/FS/DEP-INFO 2020-2021 23/04/2023

Vous aimerez peut-être aussi