• Aucun résultat trouvé

Chapitre 1 Retour en arrière

N/A
N/A
Protected

Academic year: 2022

Partager "Chapitre 1 Retour en arrière"

Copied!
10
0
0

Texte intégral

(1)

Chapitre 1 Retour en arrière

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 2

1. Difficultés de développer pour les systèmes embarqués

Quelques contraintes à prendre en compte :

- Mémoire: il y a moins de mémoire dans un téléphone intelligent que dans un PC.

- Gestion des ressources: appel téléphonique pendant le déroulement d'une partie de jeu.

- Optimisation pour une meilleure efficacité.

- Taille de l'écran.

- Disposition des éléments et accès à ces éléments (stylet, gros doigts, etc.).

- Une variété de langues.

(2)

2. Pourquoi Android?

Écouter les explications des concepteurs d'Android : http://www.youtube.com/watch?v=6rYozIZOgDk

Le but de départ était de développer un système d’exploitation pour des caméras numériques. Vu que le marché n’était pas assez large, le projet a été détourné pour les téléphones intelligents.

L’idée était donc de créer un système d’exploitation capable d’avoir des outils pouvant interagir avec l’environnement de l’utilisateur (prendre une photo et dire exactement l’endroit où elle a été prise).

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 4

3. La philosophie d'Android

- Android est basé sur le système d'exploitation Linux.

- Android est un projet "Open source", distribué gratuitement.

- Le système est développé par l'alliance OHA (Open Handset Alliance) et Google.

http://www.openhandsetalliance.com/

http://fr.wikipedia.org/wiki/Open_Handset_Alliance - Cette alliance regroupe :

* Opérateurs de téléphonie mobile

* Fabricants de semi-conducteurs

* Fabricants d'appareils

* Concepteurs de logiciels

(3)

- Android permet le traitement d'une panoplie d'applications natives : téléphonie, courriel, agenda, GPS, multimédia, messagerie, etc.

- API Android est à la disponibilité de la communauté des développeurs. Ceci permet l'extension des applications.

- Google Play (Android Market) : est la plateforme sur laquelle un développeur peut vendre son application. Si l’intention est de vendre son application, un développeur doit payer des droits d’accès de 25$, une fois lors de l’ouverture du compte. Le développeur reçoit dans ce cas 70% des revenus acquis.

- Ce n'est pas tous les pays qui peuvent vendre des applications sur Google Play : http://fr.wikipedia.org/wiki/Google_Play

Des contraintes de copyright (voir le cas de la vidéo pour le Canada) ou logistique (taxes, institutions financières, etc.).

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 6

4. L’historique d'Android

Voir ce lien :

http://www.xcubelabs.com/the-android-story.php

(4)

http://en.wikipedia.org/wiki/Android_version_history

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 8

Pour des statistiques sur un mois :

http://www.appbrain.com/stats/top-android-sdk-versions

(5)

http://developer.android.com/about/dashboards/index.html

Version Codename API Distribution

2.2 Froyo 8 0.5%

2.3.3 - 2.3.7 Gingerbread 10 9.1%

4.0.3 - 4.0.4 Ice Cream Sandwich 15 7.8%

4.1.x

Jelly Bean

16 21.3%

4.2.x 17 20.4%

4.3 18 7.0%

4.4 KitKat 19 33.9%

Les données ont été collectées sur 1 semaine, 1 décembre.

Les versions dont le pourcentage est inférieur à 1% ne sont pas prises en compte.

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 10

Taille et résolution de l’écran

http://developer.android.com/about/dashboards/index.html

ldpi mdpi tvdpi hdpi xhdpi xxhdpi Total

Small 5.4% 5.4%

Normal 9.4% 0.2% 36.9% 18.8% 16.3% 81.6%

Large 0.5% 4.6% 2.0% 0.6% 0.6% 8.3%

Xlarge 3.8% 0.3% 0.6% 4.7%

Total 5.9% 17.8% 2.2% 37.8% 20.0% 16.3%

Normal : 470x320 dp, 480x800 hdpi

http://stefan222devel.blogspot.ca/2012/10/android-screen-densities-sizes.html

(6)

5. La compétition

L'évolution des systèmes d'exploitation pour les mobiles :

http://www.xcubelabs.com/evolution-of-mobile-operating-systems.php

La part de marché pour chaque OS :

http://www.idc.com/prodserv/smartphone-os-market-share.jsp La part de marché pour chaque vendeur :

http://www.idc.com/prodserv/smartphone-market-share.jsp + Apple (ios)

+ Microsoft (windows) + BlackBerry (ex-RIM) - Palm (WebOS)

- Nokia (Symbian) http://blog.flurry.com

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 12

6. Android et outils de développement

- JDK

http://www.oracle.com/technetwork/java/javase/downloads/index.html

- Eclipse

http://www.eclipse.org/downloads/

- Android SDK

http://developer.android.com/sdk/index.html

- Android Development Tools (ADT) dans Eclipse

http://developer.android.com/sdk/installing/installing-adt.html

- Ajouter les paquetages

http://developer.android.com/sdk/installing/adding-packages.html

API : 10 (gingerbread), 15 (ice cream sandwich),18 (jellybean), 19 (kitkat) et 21 (lollipop).

(7)

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Plugin ADT

Eclipse SDK

Android

Java Installation

Chapitre 1 : Retour en arrière 14

7. Émulateur

Avantage : on peut simuler ce que l’on veut.

Inconvénient: on ne peut pas juger les performances (GPS?) ... ce n'est qu'un émulateur après tout.

Pour des tests réels, pas mieux qu’un vrai appareil mais faites attention à la version d’Android qu’il contient pour éviter d’être piégé.

Prendre en exemple le « Nexus S par Google », une carte mémoire de 40Mo.

(8)

8. Connecter son appareil

Besoin d’un driver?

http://developer.android.com/tools/extras/oem-usb.html

9. Se connecter à distance

- Ouvrir un terminal et se positionner dans le répertoire « android-sdks/platform- tools ».

- La commande « adb devices » liste tous les terminaux connectés à votre machine.

- Ouvrir un shell à distance sur le terminal « adb –s emulator-5554 shell », où

« emulator-5554 » est le nom du terminal.

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 16

- La commande « ls » pour connaitre les différentes commandes.

- On se connecte à distance sur le terminal avec la commande « telnet » :

« telnet localhost 5554 » (où 5554 est l’identificateur du port de communication associé à votre terminal).

- On envoie un message « sms send 5143436111 ceci est un test ».

- On peut même l’appeler ….

« gsm call 5143436111 » Y-a quelqu’un?

- Si je veux transférer un fichier … patience!

(9)

10. Eclipse et quelques perspectives

- JAVA - Debug

- DDMS (Dalvik Debug Monitor Server): possiblité de faire des appels.

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Chapitre 1 : Retour en arrière 18

11. Constructeur de phrases ou « Phrazibus »

- Nous allons construire une application Android et la déployer sur l’émulateur

« Nexus S ».

- L’exemple à utiliser est disponible ici :

http://www.iro.umontreal.ca/~lokbani/cours/ift1176/communs/Cours/ZIP/gui.zip - La version « swing » de l’application est le fichier « Phrazibus7.java ». Profitez de

l’occasion pour jeter un œil attentif aux notes du cours associé à cet exemple.

- Une nouvelle version de ce fichier est disponible, compilée sous Java 8, sur le site web du cours « IFT1155 ».

- L’application « Phrazibus » a pour but de générer un ensemble de phrases.

- Chaque phrase doit-être composée obligatoirement d’un sujet, d’un verbe et d’un complément d’objet direct.

- Si cette contrainte n’est pas respectée, la phrase ne sera pas affichée.

(10)

réaliser un test de nouveau.

- Voici le résultat obtenu en Java :

- 3 variantes de l'approche algorithmique associée à cette application sont disponibles dans le paquetage de cet exemple.

© Mohamed N. Lokbani 1.03 Programmation mobile à plateforme libre

Références

Documents relatifs

Le printemps danseur Le printemps danseur Photographie ©2017

• Réaliser les contrôles / tests qualitatifs et quantitatifs (scenario de tests, ecriture de script d'automatisation des tests, conduite des tests) avec les équipements appropriés.

Ici on est chez Guytou mon coiffeur pour hommes Ici on est chez Guytou mon coiffeur pour hommes Peinture, 40x60 cm

Heureusement, le système d’archivage Debian reconnait les mises à jours indépendantes et positionne correctement le statut des bogues à fixed si la personne qui fait la mise à jour

[r]

Si cette variable n’a pas été configurée par une installation locale de JDK, vous pouvez la configurer pour pointer celle d’Android

COMMERAGES ET MECHANCETES COMMERAGES ET MECHANCETES Peinture, 35,5x47 cm

1 – Pour un candidat issu d’un parcours continu de formation A l’issue d’un parcours continu de formation correspondant au titre visé, le candidat est évalué par un