Android INTRODUCTION



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

1.3 Gestion d'une application

TP SIN Programmation sur androïde Support : eclipse

Projet Android (LI260) Cours 2

TP au menu «UI ANDROID»

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

Créer des applications Android

Chapitre 1 Retour en arrière

Développement Android. J.-F. Couchot

Tutorial pour une application simple

Programmation Mobile Android Master CCI

Warren PAULUS. Android SDK et Android x86

Béatrice Bertrand CDDP de l Eure. Béatrice Bertrand CDDP de l'eure

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

De Java à Android version 0.1

Education Delivery Intelligent Tool

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

Android 101. Rémi Forax

Programmation mobile avec Android

Table des matières. Partie I Concepts de base Préface... VII

TD/TP 1 Introduction au SDK d Android

Android 4 Les fondamentaux du développement d'applications Java

- TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers

SOMMAIRE

TP2 : Client d une BDD SqlServer

Gestion des différentes tailles d écran

TP1 : Initiation à Java et Eclipse

Développement tablette Android. SophiaConf2011 Par Arnaud FARINE

Plate formes mobiles. Utilisation. Contexte 9/29/2010 IFC 2. Deux utilisations assez distinctes :

Installation et prise en main

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

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

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

Bases Java - Eclipse / Netbeans

Développement sous Android

Introduction ANDROID

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

Tutoriel Android - TP de prise en main

Développement sous Android

Les fondamentaux du développement d applications Java

Architectures Mobiles

Encore plus de widgets et de conteneurs

Programmer en JAVA. par Tama

Programmation Android L3 informatique

Android en action. Abdelkader Lahmadi Université de Lorraine

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

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

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

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

Terminaux Mobiles Communicants

Cours 1: Java et les objets

Guide d installation

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Guillaume GENS

Approche Contract First

PPM(A) Programmation sur Plateformes Mobiles (Android) Legond-Aubry Fabrice

Android. Présentation d Android. Florent Garin

Annexe Android Studio

Alfstore workflow framework Spécification technique

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

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

as Architecture des Systèmes d Information

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

Construire des plug-ins pour SAS Management Console SAS 9.1

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

Manuel logiciel client for Android

Générer du code à partir d une description de haut niveau

Cours Android. Développement et API. Romain Raveaux 1. Mars 06-03, romain.raveaux at univ-tours.fr. Organisation du module

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Corrigé des exercices sur les références

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

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Android. Programmation. De la conception au déploiement avec le SDK Google Android 2. Damien Guignard Julien Chable Emmanuel Robles

La base de données XML exist. A. Belaïd

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

Iphone vs. Android. Mardi 17 Novembre 2009 Paris, la Défense. Xavier PARADON, Directeur Technique Valtech Training

Initiation à JAVA et à la programmation objet.

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

Manuel d utilisation du site web de l ONRN

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Android et le Cloud Computing

Android. Android is an environment where the biggest limitation is your imagination. P1 1

TP1 : Initiation à Java et Eclipse

Interfaces graphiques avec l API Swing

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Travail d'étude et de Recherche

Programmation Réseau. Sécurité Java. UFR Informatique jeudi 4 avril 13

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

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

Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC

Java 7 Les fondamentaux du langage Java

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

cbox VOS FICHIERS DEVIENNENT MOBILES! INTERFACE WEB MANUEL D UTILISATION

Table des matières Introduction Démarrage Les composants graphiques... 26

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

Projet de développement

Optimiser pour les appareils mobiles

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12

Android UIThread, Thread, Handler et AsyncTask

Transcription:

Android INTRODUCTION

Présentation Système d exploitation open source Développé en 2007 par une startup rachetée par Google. Caractéristique du Système d exploitation Android: Multi utilisateur, chaque application est considérée comme un utilisateur différent. Android attribue à chaque application un user id unique. Utilise une machine virtuelle java nommée Dalvic. Langages de développement Java C Environnement de développement Android Studio (basé sur IntelliJ IDEA) ADT: Android Development Tools (plugin Eclipse) IntelliJ Netbeans. 2

Open Handset Alliance Android est développé par le consortium OHA ( formé en 2009 à l initiative de Google). Le consortium regroupe 84 compagnies. 3

Architecture Android Le noyau Linux: Gestion de la mémoire Gestion des pilotes Gestionnaire des processus Réseau Bibliothèques Bibliothèques C/C++ accessibles par des interfaces Java. 4

Versions Android Bananas split 1.2 Apple pie 1.1 (2007) HTC G1 (Dream 2008) Cupcake 1.5 Donut 1.6 Eclair 2.0 2.1 Froyo 2.2.3 Gingerbread 2.3.7 Honeycomb 3.2 Ice Cream Sandwich 4.0.4 Jelly Bean 4.3 KitKat 4,4 LolliPop 5

Structure d un projet Android Le manifest Les ressources Les activités Les vues 6

Le manifest Informations techniques :package de l application, sa version, la version du SDK requise pour son exécution Informations à destination de l utilisateur:l icône, le nom de l application, le thème utilisé les activités Informations utiles au système, telles que les messages auxquels peut répondre l application (Intent), les permissions requises pour autoriser l application à s exécuter (accès réseau, accès aux fichiers, etc.) 7

Le manifest <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.examples.exemple0" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="18" /> Le namespace est appliqué uniquement aux attributs et non aux éléments. L attribut package n est pas préfixé par android. Support plusieurs tailles d affichage <supports-screens android:smallscreens="false" <!-- Supérieure à 3" --> android:normalscreens="true" <!-- entre 3" et 4.5" --> android:largescreens="true" <!-- entre 4.5" et 10" --> android:xlargescreens="true" <!-- > 10" --> /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name"> <activity android:name="com.examples.exemple0/mainactivity" android:label="@string/app_name" > </activity> </application> </manifest> 8

Les ressources Les ressources constituent tout ce qui est externe au code de l application: textes, images, vidéos, chaînes de caractères, codes couleurs, menus, composants graphiques Values: le fichier strings.xml contient les valeurs textuelles, comme des messages utilisateurs, les intitulés des composants graphiques (<string>) ou des valeurs de couleur (<color>). Dans le code source, nous accédons aux ressources à l aide de la classe R générée automatiquement par le SDK. Drawable: contient les images (png,gif,jpg) Layout: contient les éléments de l interface utilisateurs (Vues). 9

Les activités Une activité est la composante principale pour une application Android, elle représente un écran de l application. Une application doit comporter au moins une activité. 10

Cycle de vie d une activité oncreate(bundle) : lancement de l activité. Un objet de type Bundle contient des données de persistance éventuellement sauvegardés avant la terminaison précédente de l activité. C est dans cette méthode que l on initialise les variables de l activité, l interface graphique, les attributs, etc. onstart() : apparition de l activité à l écran onpause() : une autre activité est mise en avant, le périphérique passe en veille onresume() : l activité revient au premier plan onstop() : l activité n est pas à l écran onrestart() : après que l activité a été stoppée, retour au premier plan ondestroy() : fin de l activité onsaveinstancestate(bundle) : l activité doit être «tuée», un objet Bundle est passé en paramètre pour sauvegarder des données. 11

Exemple public class MainActivity extends Activity { b1.setonclicklistener(new View.OnClickListener() { @Override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); Button b1= (Button) findviewbyid(r.id.b1); //View.OnClickListener est une interface qui contient la méthode onclick @Override public void onclick(view arg0) { EditText t1=(edittext) findviewbyid(r.id.t1); EditText t2=(edittext) findviewbyid(r.id.t2); t2.settext(t1.geteditabletext()); } }); 12

Exemple L écran contient deux TextView, deux EditText et un Button, le clic sur le bouton button1 copie le contenu de la zone de texte textedit1 dans textedit2. 13

La classe R package com.example.exemple0; public final class R { public static final class id { public static final int TextView01=0x7f080002; public static final int button1=0x7f080004; Générée et mise à jour automatique dans le dossier src/gen. La classe permet l accès aux ressources à partir du code java. Pour chaque ressource ajoutée, l assistant génère un identifiant lui correspondant dans la classe R. public static final int edittext1=0x7f080000; public static final int edittext2=0x7f080003; public static final int textview1=0x7f080001; } public static final class layout { public static final int activity_main=0x7f030000; } } 14

la classe Activity. /*Pour Button et EditText, les composants * de l'interface utilisateur sont dans l'espace de nom * android.widget */ import android.widget.*; /*L'interface View contient la méthode onclick*/ import android.view.view; public class MainActivity extends Activity implements View.OnClickListener { @Override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); // Récupérer le boutont d'après son id Button b = (Button) findviewbyid(r.id.button1); /* associer la méthode onclik à l'événement click sur le bouton */ b.setonclicklistener(this);} @Override public void onclick(view v) { EditText t1 = (EditText) findviewbyid(r.id.t1); EditText t2 = (EditText) findviewbyid(r.id.t2); t2.settext(t1.gettext());} @Override public boolean oncreateoptionsmenu(menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.main, menu); return true;}} 15

16

Les intentions (Intents) Les objets de type Intent représentent des messages (intentions) émis par des applications, à destination des trois composants Activity, Service et BroadcastReceiver. C est ce mécanisme qui est mis en œuvre pour naviguer au sein d une application, pour appeler d autres applications ou pour envoyer ou recevoir des messages système. attributs: ComponentName : le nom du composant à qui est destiné directement le message. la méthode setclassname initialise cette valeur avec le nom de la classe destinataire complétement qualifé. Action : une chaîne de caractère qui décrit une action à exécuter, par exemple android.intent.action.dial (émettre un appel), android.intent.action.web_search (lancer une recherche google), etc Data : données qui accompagnent l action à exécuter, sous la forme d une URI et d un type. Si l action est DIAL, nous devons par exemple passer le numéro de téléphone à joindre; pour WEB_SEARCH, la chaîne de caractères à rechercher. Extras : paires de clés/valeurs transmises avec le message, sans format particulier. 17