33
Android Programming & NFC Technology Course 1 Nour EL MADHOUN [email protected] 1

Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN [email protected] 1 Outline •What’s Android •Android Architecture

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Programming & NFC Technology

Course 1

Nour EL MADHOUN

[email protected]

1

Page 2: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Outline

• What’s Android

• Android Architecture

• Android Application Components

• ‘Hello World’ on Android

• What’s NFC Technology

2

Page 3: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

What’s Android

3

Motorola CliqHTC G1 HTC HeroSamsung i7500

Samsung MomentMotorola DroidHTC Magic HTC Tattoo

Sony X10

Page 4: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

What’s Android

4

• Android is a software stack for mobile devices thatincludes an operating system, middleware and keyapplications

• Android is based on JAVA and all its applications aredeveloped in JAVA

• Android SDK offers rich tools for android applicationdevelopment and many useful APIs

Page 5: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Architecture

5

Page 6: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

6

Activity

◦ Present a visual user interface for one focused endeavorthe user can undertake

◦ Example: a list of menu items users can choose from

Services

◦ Run in the background for an indefinite period of time

◦ Example: calculate and provide the result to activitiesthat need it

Page 7: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

7

Broadcast Receivers

◦ Receive and react to broadcast announcements

◦ Example: announcements that the time zone has changed

Content Providers

◦ Store and retrieve data and make it accessible to allapplications

◦ Example: Android ships with a number of contentproviders for common data types (e.g., audio, video,images, personal contact information, etc.)

Page 8: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

8

Intents

◦ Hold the content of a message

◦ Example: convey (transmet) a request for an activityto present an image to the user or let the user editsome text

Page 9: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

9

Activities

- Une application Android est généralement composée deplusieurs activités liées les unes aux autres

- L’activité affichée au lancement de l’application estappelée « activité main »

- Chaque activité peut en lancer une autre pour effectuerdifférentes actions et respecte un cycle de vie

Page 10: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

10

Cycle de vie d’une

activité

Page 11: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

11

Cycle de vie d’une

activité

Page 12: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

12

- onCreate() : est appelée au premier lancement del’activité, ou si celle-ci est ressuscitée

- onStart() : est exécutée après chaque onCreate() ouonRestart(), elle permet de charger les donnéeslorsque l’activité est visible par l’utilisateur

- onRestart() : est lancée lorsque l’activité repasse aupremier plan après avoir été arrêtée via onStop()

Page 13: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

13

- onResume() : est exécutée lorsque l’activité estpassée en avant plan (permet la mise à jour desdonnées)

- onPause() : est appelée chaque fois que l’utilisateurchange d’activité ou quand celui-ci ferme l'activité(permet la sauvegarde des données)

- onStop() : est lancée avant chaque mise en sommeil del’activité (permet la libération des ressources)

Page 14: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

14

- onDestroy() : est exécutée lors de l’arrêt del’activité, elle met fin au cycle de vie.

Page 15: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

15

Layout

- La structure visuelle d’une activité est décrite dans unfichier .xml appelé layout

- Chaque activité a son propre fichier layout pour la décrire

- Par exemple, on associera l’activité MainActivity au fichieractivity_main.xml qui est généré automatiquement lors de lacréation de l’activité

Page 16: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

16

Fichier Manifest

- Le fichier Manifest indique au système qu’un composant quiveut se lancer existe déjà

- L’application doit déclarer tous ses composants, notammentles activités, dans un fichier AndroidManifest.xml

Page 17: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

17

Fichier Manifest

- Ce fichier comprend également:

*les informations concernant les permissions requises

par l’application,

*le niveau minimum de l’API,

* les caractéristiques logicielles et matérielles et les

librairies requises

Page 18: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

18

Page 19: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

19

Ressources de l’application

- En complément du code, une application Android a besoin deressources séparées du code comme:

des images, des fichiers son, etc.

Page 20: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

Android Application Components

20

Ressources de l’application

- Pour chaque ressource inclue dans l’application:

*les outils de construction SDK définissent un unique entier

nommé ID

* Cet ID est utilisé pour faire référence à la ressource à

partir du code ou d’autres ressources .xml

Page 21: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

21

Page 22: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

22

Page 23: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

23

Page 24: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

24

Page 25: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

25

Page 26: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

26

Page 27: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

27

Page 28: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

28

Page 29: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

29

Page 30: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

‘Hello World’ On Android

30

Page 31: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

What’s NFC Technology

31

- Le NFC (Near Field Communication) est une technologiepermettant d'échanger des données à une distances très faible(moins de 5cm), entre deux appareils équipés de NFC sans contact

- Le NFC est intégré dans certains téléphones portables sousforme d’une antenne, ainsi que sur certaines cartes de transportou de paiement (permettant le paiement sans contact)

Next Course

Page 32: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

What’s NFC Technology

32

Page 33: Android Programming & NFC Technology Course 1Android Programming & NFC Technology Course 1 Nour EL MADHOUN nour.el-madhoun@lip6.fr 1 Outline •What’s Android •Android Architecture

What’s NFC Technology

33