10 ‐ Interface Mobile - domleg45/cls420-411-MV GitHub Wiki

10 Interface mobile

Concevoir pour le mobile est devenu dans le monde d’aujourd’hui une priorité et non une option. La pratique du Mobile-First Design (la conception pour le mobile d’abord) permet la définition et la garantie de meilleurs parcours utilisateur, regroupant tous les terminaux de consultation. Prioriser la conception pour le mobile, notamment la conception d’application (web ou mobile) devient une pratique de plus en plus courante. Elle s’explique par le fait que nous vivons dans un monde hyper-connecté, où nos smartphones et tablettes nous suivent partout où l’on va.

iOS 17

10.1 iOS

iOS est un système d'exploitation mobile développé par Apple Inc. Il a été publié pour la première fois en tant que iPhone OS en juin 2007, en même temps que le premier iPhone (https://en.wikipedia.org/wiki/IPhone_(1st_generation)).

Logo Android

10.2 Android

Android Inc était une petite startup fondée en 2003 en Californie par Rich Miner, Nick Sears, Chris White et Andy Rubin. La modeste entreprise avait pour vocation d’améliorer le système d’exploitation des caméras afin de rendre les utilisateurs et utilisatrices moins dépendants de la taille de leurs cartes de stockage. L’idée n’a jamais vraiment pris et les équipes ont dû changer de stratégie.

Le secteur du téléphone étant en pleine expansion, la nouvelle vision était de proposer une plateforme gratuite, contrairement aux grands acteurs du milieu de l’époque. Une idée qui semble avoir plu à Google, puisque le géant a racheté Android en 2005. Le développement de l’OS continue et se base sur Linux afin de le rendre facilement accessible et disponible auprès d’entreprises tierces (comme des constructeurs de téléphones), sans avoir à y investir un sou.

10.3 Popularité d'Android et iOS

Selon les statistiques établies par Statista Research Department, le nombre d’**applications mobiles disponibles **sur le Play Store pour les utilisateurs d’Android s’élève à quelque 3,4 millions d’applications, tandis que l’App Store d’Apple met à la disposition des utilisateurs de la pomme 2,2 millions applications à télécharger sur leurs appareils.

10.4 Versions API

Android met sur le marché à tous les ans une version majeure de leur plateforme. En date d'aujourd'hui, la version 14 Upside Down Cake est la plus récente. La version 15 Vanilla Ice Cream devrait être mis sur le marché d'ici quelques semaine.

Le système Android assure aux applications une compatibilité ascendante. Cela signifie qu'une application faite pour fonctionner sur version minimale d'Android fonctionnera sur toutes les version Android supérieures. Par contre, certaines limitations sont rencontrés si on décide de développer avec des anciens API pour être compatible avec le plus grand nombre de téléphone sur le marché. Par exemple, si vous utilisez des anciennes versions, les librairies OpenGL ne seront pas optimales si vous faites un jeu.

Versions d'Android

10.5 Premiers pas

Pour faire une application Android, il vous faut créer un projet sur votre ordinateur à l'aide d'une application comme Android Studio ou tout autre IDE qui utilise le plug-in ADT (Android Developer Tools). Vous aurez également à choisir un émulateur pour tester vos applications. Votre projet sera relié à une version d'Android (12, 13, 14 ou 15). Le langage le plus populaire en ce moment pour faire une application Android est Kotlin. Vous pouvez aussi utiliser Java.

10.5.1 Kotlin

Kotlin est un langage de programmation orienté objet et fonctionnel, avec un typage statique qui permet de compiler pour la machine virtuelle Java, JavaScript, et vers plusieurs plateformes en natif. Google suggère fortement d'utiliser Kotlin pour le développement de nouvelle application Android. Il est aussi possible de faire une application Android avec Java, C et C++.

10.5.2 Activité

Vous aurez à choisir le type d'activité pour votre application et son nom qui lui sera propre (avec le nom de package). Google permet de choisir parmi ces activités: Basic Activity, FullScreen Activity, Google Map Activity, Setting Activity, Tabbed Activity, etc.

10.5.3 Liste Activités

https://www.geeksforgeeks.org/different-types-of-activities-in-android-studio/

10.5.4 Layout

Une mise en page (layout) définit la structure d'une interface utilisateur dans votre application, par exemple dans une activité. Tous les éléments de la mise en page sont créés à l'aide d'une hiérarchie d'objets View et ViewGroup. Il est possible de les définir dans un fichier xml ou dans votre code (via les objets View).

10.5.5 Intent

Une intention (Intent) dans le système d'exploitation Android est un mécanisme qui permet aux utilisateurs de coordonner les fonctions de différentes activités pour accomplir une tâche.

10.5.6 Gradle

Gradle est un outil de construction automatisé. Il permet d'automatiser toutes les étapes d'un projet, de sa construction à son déploiement en passant par l'exécution des tests et ne se limite pas à ses étapes.

10.5.7 Le manifeste

Le fichier AndroidManifest.xml est le fichier de configuration pricipale de votre projet Android.

10.5.8 Écrans

Android classe les écrans selon leur taille de diagonale en quatre catégories: small, normal, large et xlarge. Android classe aussi les écrans selon leur densité de pixels: ldpi, mdpi, hdpi, xhdpi, xxhdpi et xxxhdpi.

10.5.9 Unités

dp ou dpi: Unité indépendante de la densité de l'écran (density-independen pixel). sp ou sip: Unité dépendante de la taille préférées de police de caractères. px: Pixel. in: Pouce. mm: Millimètre.

10.5.10 Images en fonction des densités

10.6 Objets connectés

Callback (rappel)

Tel que vu dans nos appels avec Chromecast, il y a une promesse d'un rappel. On peut aussi se référer à une fonction promise en javascript. C'est un appel asynchrone qui représente l'état courant de l'opération.

Bluetooth avec Android

À l'aide de la librairie android.bluetooth, il est possible de scanner et de connecter des dispositifs bluetooth avec votre application mobile. Il vous faut ajouter la permission au fichier manifest et à agir en tant que serveur pour ajouter un dispositif à votre application mobile. Une méthode de rappel est également nécessaire pour le scan.

Références

https://lagrandeourse.design/blog/concevoir-une-application-mobile-les-bonnes-pratiques-ux-ui/ https://leclaireur.fnac.com/article/336140-de-2003-a-2023-retour-sur-lhistoire-dandroid-et-comment-los-sest-impose-dans-le-monde/

Livres

Android - Guide de développement d'application Java pour Smartphones et Tablettes, Éditions-eni, 4ième édition, Sylvain Hebuterne