Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Déploiement d’applications Java ME
Master MATIS – Management and Technology of Information Systems Master en Technologie des Systèmes d’Information Hikari WATANABE & Dejan MUNJIN, Juin 2007 Département des Systèmes d’Information Centre Universitaire d’Informatique Faculté des Sciences Économiques et Sociales Université de Genève Institut d’Informatique et Mathématiques Appliquées Université Joseph Fourier de Grenoble Directeur de recherche : Pr. Dimitri KONSTANTAS
2
Problématique Déployer une application sur grand nombre de téléphones mobiles possédant des caractéristiques différentes, des architectures hétérogènes, et un support variable des API optionnels de Java ME. Comment découvrir les API Java disponibles ? Comment réutiliser les composants Java dans le développement ? Comment améliorer une application avec les prétests ? La durée de vie d’un téléphone sur le marché est courte ce qui implique des efforts de programmation plus importants 2
3
Notre Approche Méthodologie
Création d’une suite de tests pour le capacités de téléphones mobiles Validation pour une cas spécifique (libraire GPS de FoxyTag) Plateforme collaborative pour développeurs dans le but d’échanger les informations des tests Ma position GPRS Bluetooth Ce rapport de travail propose une méthode permettant de déployer de façon efficace une applications Java sur un grand nombre de téléphones mobiles hétérogènes. Cette méthode est composée de trois phases: Le développement d’une application de test, qui recense les capacités des téléphones mobiles. Elle permet de cibler les téléphones pour développer une application. L’étude de cas et le développement d’une librairie GPS générique, permettant de minimiser le temps de développement et maximiser la compatibilité d’une application. La réalisation d’une plateforme collaborative, ouvrant la possibilité des préstests d’une application par une communauté de spécialistes. Liste des radars Serveur web 3
4
Composants de Java ME Les différents composants de Java ME
Les composants logiciels du téléphone mobile (Source : JSR-185 « Sun Microsystems ») Les spécifications définies dans « Java Community Process » 4
5
Le seul protocole d’installation spécifié: « Over The Air »
Déploiement OTA Le seul protocole d’installation spécifié: « Over The Air » 1. Recherche d’applications 2. Lecture de JAD Ressources OK 3. Lecture de JAR Installation OK 4. Code de réponse Serveur web POST 900 OK 5
6
Avantages et inconvénients de Java ME
Avantages des applications Java ME Sécurité Portabilité du langage Facilité pour un utilisateur d’installer les applications Désavantages des applications Java ME Exploitation des ressources du téléphone inefficiente à cause des API Les API de Bluetooth, Multimédia ne sont pas obligatoires Avec le protocole d’installation OTA le développeur doit connaitre les possibilités de chaque téléphone ciblé par son application 6
7
Application cliente de test : FoxyTest
FoxyTest permet de tester les paramètres suivants en vue de l’utilisation de FoxyTag: Identification de la plateforme Version de la configuration (CLDC) Version du profile (MIDP) Version de l’API Bluetooth, présence et utilisation des classes Bluetooth Version de l’API de localisation, présence et utilisation des classes Location Le test est envoyé vers une base de données 7
8
Installation de FoxyTest
8
9
Déroulement de l’application de test
9
10
FoxyTest - Transfert du rapport
10
11
Rapports de FoxyTest Statistique des rapports (8000)
Téléphones mobiles compatibles JSR 82 par marque (5000) Téléphones mobiles incompatibles JSR 82 par marque (3000) 11
12
Utilisation des résultats pour le développement d’une Librairie GPS pour Java ME
Pourquoi cette librairie ? FoxyTag nécessite une API Bluetooth pour fonctionner Cibler la plateforme réduit la portabilité de Java ME Limites de la librairie GPS pour Java ME La taille d’une application doit rester petite en raison de ressources limitées Introduction du code redondant augmente le risque de « bugs » Avantages de la librairie GPS Diminuer le temps de développement des versions Prévoir et intégrer les petites incompatibilités entre les téléphones dans une librairie 12
13
Librairie GPS - Approche
bluetooth integrated GPS GPS import ch.foxytag.bluetooth.GPS; GPS gps = new GPS(); gps.connect(); foxytag import ch.foxytag.integrated.GPS; GPS gps = new GPS(); gps.connect(); FoxyTag 13
14
Librairie GPS - Utilisation
bluetooth integrated GPS GPS { xor } « import » « import » import ch.foxytag.bluetooth.GPS; GPS gps = new GPS(); gps.connect(); foxytag import ch.foxytag.integrated.GPS; GPS gps = new GPS(); gps.connect(); FoxyTag 14
15
Librairie GPS pour Java ME
Classe GPS intégrée dans chaque paquetage bluetooth GPS void connect() void connect(Display d) String[] getData() void locationUpdated() void stateChanged() void addGPSListener (GPSListener listener) void removeGPSListener (GPSListener listener) void notifyGPSListener() GPS GPS integrated GPS GPS 15
16
Librairie GPS pour Java ME
Spécificités d’un GPS Bluetooth GPSBluetooth void connect(String url) void setUrl(String url) boolean isConnected() boolean isFresh() boolean isStop() void run() void stop() bluetooth GPS GPS Bluetooth GPSBluetooth 16
17
Librairie GPS pour Java ME
Spécificités d’un GPS intégré integrated GPS GPSIntegrated void start() void providerStateChanged() GPS Intégré GPSIntegrated 17
18
Statistique de la librairie
5532 lignes de code La taille de la librairie compilée = KO Utilisée dans le développement des versions de FoxyTag Intégrée dès la distribution de FoxyTag Le code source de FoxyTag reste le même pour les GPS intégrés et les GPS Bluetooth Besoin de prétest Après le développement et la généralisation de la librairie, il reste le test de l’application Le test doit porter surtout sur les téléphones avec le GPS intégré
19
Plateforme collaborative
Fonctionnalités de la plateforme de test Permettre aux développeurs d’applications Java ME de tester leurs applications de façon collaborative Favoriser les tests et non les applications Partager des connaissances sur les différences entre téléphones mobiles Proposition de versions d’une application pouvant être testées et évaluées Notation des rapports de la part des développeurs ce qui permet un classement des testeurs 19
20
Plateforme collaborative
Indication des téléphones mobiles à disposition Évaluation des projets téléchargés Catégories favorites 20
21
Plateforme collaborative
Téléphones mobiles nécessaire pour une version Résultats des tests (rapport) et notation 6. Liste des meilleures testeurs 21
22
Conclusion Déployer de manière efficace des applications mobiles :
Les développeurs sont obligés de développer les versions d’une application Java ME. Ils doivent bien connaitre les spécifications Java et les différences entre les téléphones mobiles. Nous avons mis en application une approche composée de trois étapes permettant de développer et déployer une application pour accroitre sa portabilité. L’évolution future de Java sur les téléphones mobiles devrait s’orienter vers « JavaFX ». Il s’agit d’une spécification composée de sous éléments de « Java Standard Edition ». La concentration dans cette évolution est portée sur les interfaces graphiques. Les différences entre les API disponibles ne sont pas, pour l’instant plus approfondies que dans Java ME. 22
23
Questions ? 23
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.