2. .
.
.
• Un système • Gratuit • Utilisé pour les
d’exploitation • Open Source Smartphones
pour téléphones • Peut équiper
mobiles d’autres appareils
• Fondé sur un • des tablettes
noyau Linux tactiles
• Utilise le langage • des notebooks
Java • etc ...
2
3. Point de vue utilisateur:
Point de vue constructeur: Système
Système Linux + Java fonctionnel, intuitif, évolutif
Applications nouvelles
Point de vue développeur:
Langage Java
kit de développement gratuit
SDK complet
Android Market
3
4. ANDROID 1.0 et SDK NOVEMBRE 2008
Release 2
T-MOBILE G1
OCTOBRE 2008 ANDROID : OPEN
SOURCE
ANDROID 1.0 et SDK SEPTEMBRE 2008
Release 1
AOUT 2008 ANDROID MARKET
OPEN HANDSET
ALLIANCE
ANNONCE DE NOVEMBRE 2007
L’ANDROID
SDK POUR ANDROID
AOUT 2005 STARTUP ANDROID
4
5. ANDROID, MARCHE ?
• Acteurs système d'exploitation mobile:
7%
SYMBIAN
10,2%
BlackBerry OS
1,6%
49,3% Autres
10,8% iPhone OS
Android
1,2%
Windows Mobile
19,9%
Linux
5
6. - Le nom de Google - Position de leader
et les services de l'IPhone
associés - Frilosité des
- Plateforme de opérateurs
développement partage de valeur
banalisée avec Google.
- L’Open Source
6
7. Android 4.0:
• Plus aucun bouton physique en façade
• Un bon relooking d'interface
• La possibilité de prendre des captures-écrans de
manière native en appuyant sur Power et Home
• Un bouton d'accès rapide à l'appareil photo
• De nouveaux outils d'édition de photos
• La possibilité de filmer et de prendre des photos
en même temps
• La possibilité de zoomer pendant qu'on filme.
• La possibilité de débloquer votre téléphone
simplement grâce à une reconnaissance faciale.
7
9. • Architecture ARM
• Système de fichiers supporté : FAT32
• Basé sur Linux 2.6.24
• Support de TCP/IP, UDP,…
9
10. • SQLite:
• écrite en C
• propose un moteur de base de données
relationnelles
• accessible par le langage SQL
• Libc: Librairie système C
• Optimisée pour les systèmes embarqués
10
11. • Surface Manager: Permet de créer des interfaces
visuelles.
Application 1
Surface Manager
Application 2
11
12. Android Runtime
Machine Virtuelle Dalvik
• Nouvelles instances pour chaque
processus: Applications indépendantes
• Exécute des fichiers .dex (Dalvik
exécutable)
• Dalvik core class library fournit une base de
développement proche de Java SE, adapté
au mobile.
12
14. Application Framework
• Points d’entrée pour les applications
• Accès à toutes les ressources inférieures via
librairie
• Accès possible aux ressources C via JNI
14
15. • Content Providers: permet l’accès aux données
d’autres applications (ex: liste de contacts)
• Ressource manager: permet l’accès aux ressources
statiques images, fichiers
• Notification Manager:
permet d’afficher des alertes
personnalisées dans la barre Barre de
de statuts notification
• Activity Manager: gère le cycle de vie
des applications et l’enchainement
des vues.
15
20. Intents
-Requête, description d’action à effectuer
-fait le lien entre les différentes applications
Décrit par:
- une action
(Intent.ACTION_WEB_SEARCH, Intent.ACTION_CALL, …
)
-la donnée à traiter sous forme d’URI ( le numéro de
téléphone à composer)
Type:
- Explicite (référence exacte)
- Implicite (description)
20
21. Services
Composantes sans interface graphique
Activité de longue durée
Service interne: context.startService
Service externe: context.bindService
Communication via une interface
Ex: MediaPlayer (pause, stop, play)
21
22. BroadCast Receiver
Réagit à des évènements externes
- Logiciel: Alarme, notifications...
- Matériel: Activation puce GPS
Permet de réveiller une
application, afficher un
message, lancer une activity
22
23. Content Provider
Accès aux données partagées
Données internes ou externes à l'application
Encapsulation du schéma de la base
Pas de requête :
- URI
- Services de manipulation des données fournis par le package
23
24. Android, développement?
• Environnement:
- Windows XP/ Vista/ Seven
- Mac OS 10
- Linux
• SDK Android
• Eclipse + plugin ADT
• Optionnel: outil dev C intégration code C/C++ en tant
que librairie (JNI)
24