Plate formes mobiles IFC 2 Markus Jaton Utilisation Deux utilisations assez distinctes : Téléphones évolués (Nokia, Motorola) Smartphones (Apple,, Windows) La téléphonie est en stagnation, alors que les smartphones sont en croissance très forte Dans le cadre de ce cours, ce sont plutôt les smartphones qui nous préoccupent Contexte Contexte très volatil, plateformes très hétérogènes (HW et SW) Difficulté majeure de concevoir des applications multiplateformes Le smartphone pourrait devenir le périphérique d authentification personnelle universel d ici quelques années Une spécification globale matérielle fait encore défaut 1
Les manques Difficulté de stocker une identité de manière sûre dans le smartphone (UICC ) Pas de zone de stockage sécurisée (tamper proof) Pas de cartes SD authentifiées / marquées Pas de circuit dédié à l authentification Pas d identité NFC (Near Field Communication) Paysage partiel (2010) Windows Mobile Nokia Symbian RIM Blackberry Palm (HP) Gamet OS ios Problèmes communs Petites dimensions, ressources restreintes, consommation réduite Fonctions de téléphonie sévèrement temps réel Système embarqué pouvant convoyer des données sensibles Manipulation à une seule main 2
IOS Noyau UNIX, comme Mac OS X Core OS (couche de base) Core Services Media, Cocoa Portage de NextStep (d où le langage Objective C) Nécessite un Macintosh pour développer, et une licence pour charger sur la cible IOS Objective C à l origine développé comme préprocesseur de C pour émuler Smalltalk Java s est beaucoup inspiré de Objective C Code très dynamique, difficile à vérifier «Message passing» à la Smalltalk Outils de développement rares (un préprocesseur pour gcc ) Obligation de passer par XCode iphone, business model Modèle fidèle à la philosophie Apple, tout gérer de A jusqu à Z Plate forme matérielle d excellente facture, mais très coûteuse Le bénéfice est réalisé sur les produits secondaires (Apple store, itunes, accessoires) Ceci a imposé un environnement particulièrement fermé pour le développement «third party» 3
Windows Mobile Plate forme purement logicielle, mais relativement fermée Avec Blackberry, actuellement la meilleure en termes de sécurité native Langage de programmation préféré C# : un Java avec des pointeurs Alternatives : C++, Java (J2ME, CLDC ou CDC) En sérieuse perte de vitesse, version 7 attendue (Base Zune?) Windows Mobile Base Windows CE, un Windows 3.1 revisité Principe des menus à la Windows peu satisfaisant sur un portable Compatibilité avec environnement Office appréciée en entreprise Palette de choix d appareils considérable, mais allant s amenuisant Nokia Symbian Nokia reste le numéro 1, malgré une sévère érosion des ventes. Bruits insistants sur un éventuel Nokia basé sur, systématiquement démentis par Nokia. Symbian OS vient de Epoc 32 (Psion) et est Open Source depuis 2010. Version prochaine Symbian ^3 (Nokia N8) Promesse d applications aisées à écrire 4
Nokia Symbian Le business traditionnel de Nokia est la téléphonie Partenaires : Motorola, Panasonic Plusieurs partenaires historiques i (Ericsson ) ont abandonné récemment Symbian pour. Outils de développement gratuits, sur PC RIM Blackberry Protocole propriétaire pour la technologie push e mail Encryptage des données Bonne pénétration du marché business, en particulier aux Etats Unis Programmation des applications Java Bibliothèque de composants disponible avec eclipse Palm OS Palm a été racheté en 2010 par Hewlett Packard Venu tard à la téléphonie, Palm est un acteur mineur, mais apprécié éiédes geeks Base Linux pour l Os, renommé Gamet OS Programmable en C, C++ ou Java La base Linux en fait une base de développement assez favorable 5
J2ME Plate forme logicielle de Sun Microsystems, destinée à la programmation des systèmes embarqués Deux modèles principalement i : CDC et CLDC Très peu d implémentations CDC, CLDC est considéré comme très insuffisant. Peu de possibilités de programmation à bas niveau, sinon par les JSR J2ME L apparition d a donné un sérieux coup de frein à J2ME, déjà pénalisé par une fonctionnalité insuffisante. Les JSR (JSR 82 Bluetooth, th JSR 179 GPS, ) sont souvent instables ou incompatibles Les adopteurs de ou de Blackberry disposent de Java en natif, l iphone ne supporte pas de machine virtuelle Java La plus grande croissance en 2010 dans le marché smartphone Open Handset Alliance : Google, mais aussi Motorola, HTC, Samsung, Sony Ericsson, HP, Dell, Les analystes prévoient qu en 2012, sera l OS mobile le plus vendu Actuellement, version 2.2 (Froyo) suivie en décembre 2010 de Gingerbread 6
Inventé à l origine par la start up, rachetée par Google Noyau Linux, machine virtuelle propriétaire (Dalvik) pour abriter les applications et les isoler dans une sandbox. Multi tâche natif, open source, ce qui permet les déclinaisons personnalisées (HTC Sense, équivalents chez Sony Ericsson, LG ou Samsung) La multiplicité des constructeurs impose pratiquement une machine virtuelle pour être en mesure d implémenter l Market, pendant de l App Store de Apple. Dalvik dans la version 2.2 est d une efficacité surprenante L implémentation Java est très complète App Inventor permet de créer des applications sans programmer Une ACTIVITE (Activity) est un élément applicatif visible. Une activité est initiée à l aide d une INTENTION (Intent) qui contient les paramètres sugnificatifs pour cette application. Une Activity peut au besoin être «tuée» par l OS 7
Un SERVICE est une tâche de fond, sans interactions avec l écran ou l utilisateur. Lorsqu un service veut signaler quelque chose à l utilisateur, il émet une NOTIFICATION. Cette notification sera visible (audible, sensible) dans la barre de notifications de l écran. Un système de développement complet est disponible, on peut aussi l intégrer à eclipse (conseillé!) Les écrans sont en principe décrits en XML Un fichier Manifest.xml décrit l application, et définit ses propriété et ses privilèges Du code C peut être intégré dans une application, mais la démarche est déconseillée. Froyo limite la dimension d écran à 7 (d où la taille du Samsung Galaxy Tab) A partir de Gingerbread, des écrans de plus de 7 seront supportés : les constructeurs t pourront de ce fait intégrer sur les tablettes de plus grande dimension Chrome OS semble désormais réservé au Netbooks de l Open Handset Alliance 8
Tendances Source : Alan Daniel, Georgia Institute of Technology, http://www.cc.gatech.edu/classes/cs6751_97_fall/projects/gacha/daniels_essay.html 9