Cours de Spécialité

Objectifs
L'objectif de ce cours de spécialité pour Systèmes Embarqués est de découvrir la conception d'applications mobiles (Android) et de réaliser une application de messagerie qui fonctionne par bluetooth.

Environnement de Travail

L’environnement de travail mis à votre disposition est le suivant:

  • Station de travail PC avec système d’exploitation Linux
  • Navigateur IceWeasel (proche de Mozilla Firefox)
  • L’environnement de travail MIT AppInventor2 BETA
  • Un téléphone / une tablette sous Android (HTC ou Motorola ou le votre)

Premiers Pas

  1. La première chose à faire est d’exécuter le navigateur IceWeasel (sur le bureau ou dans le dock en bas au milieu) et d’entrer l’adresse suivante: http://ai2.appinventor.mit.edu
  2. Soit vous possédez un compte google et vous l’utilisez pour vous connecter à App Inventor. Sinon utilisez une de vos adresses e-mail pour créer un compte.
  3. Vous êtes maintenant sur la page de gestion des projets d’AppInventor2. La première chose est de créer un nouveau projet. Une fois créé, vous êtes automatiquement redirigés vers la page de votre projet. Cette page contient les différents éléments que vous pouvez ajouter dans l’application: boutons, images, horloges, capteurs…
  4. Une fois que vous avez choisi les composants que vous utiliserez, vous pouvez passer à la vue block (bouton en haut à droite) pour spécifier comment vont fonctionner / réagir vos composants.

Première application

Vous allez créer une application plutôt basique pour comprendre le fonctionnement de la programmation par blocs. Il s’agira d’entrer votre prénom dans une zone de texte et une fois validé, l’application affichera “Bonjour” suivi de votre prénom.

Insertion des différents composants

Vous avez besoin des éléments suivants:

  • 2 éléments de type Label (un que vous initialisez à “Quel est votre prénom”, l’autre étant vide)
  • 1 TextBox
  • 1 Button (dont le champ texte sera Valider)

Disposez les de manière à avoir le premier label, la textbox, le button, le deuxième label. Vous pouvez éventuellement ajouter d’autres éléments.

Les fonctionnalités des différents composants

Une fois que vous avez défini et placé vos différents composants, il faut définir le fonctionnement de chacun des composants et leurs interactions éventuelles avec d’autres composants.

  1. Cliquer sur le bouton Blocks.
  2. Sur la gauche de la fenêtre, vous avez deux (parmi trois) onglets intéressants: Built-In qui contient la logique générique et dans My Blocks vous pouvez contrôler les composants que vous avez ajouter.
  3. Pour cette application, l’objectif est de renseigner automatiquement le deuxième label, un fois que le button sera cliqué. Dans l’onglet Screen1, repérez le Button1 et prenez le premier élément (when Button1.click do) et déposer le sur le plan de travail (au centre). Vous pouvez constater que les blocs ont la forme de pièces de puzzle et donc il n’est pas possible de connecter des éléments qui ne “‘“s’emboîtent” pas.
  4. Si on devait résumer ce que doit faire notre application, on l’écrirait de la façon suivante:

“Quand le bouton est cliqué, affecter le texte du label2 au texte “Bonjour ” concaténé avec le texte de la TextBox.”

Réaliser le diagramme qui réalise cette action.
  5. Pour tester votre application, il y a plusieurs solutions… et nous recommandons la dernière (la plus simple):
  • créer un nouvel émulateur (en haut à droite). Attendre le chargement de l’émulateur. Le chargement de l’émulateur et parfois très long à cause de nombreuses mises à jour.
  • par USB, cela suppose l’installation de quelques logiciels (voir https://appinventor.mit.edu/explore/ai2/linux pour plus d’informations).
  • en utilisant l’AI Companion qui nécessite une connexion Wi-Fi, vous pouvez utiliser le WiFi PolytechGuests avec le mot de passe ` mysA5oxu`. L’application se trouve à l’adresse https://appinventor.mit.edu/explore/ai2/setup-device-wifi.html.

Tester le bon fonctionnement de votre application

Envoi de messages par Bluetooth

Il s’agit maintenant de créer une application qui envoie / reçoit des messages par bluetooth. Il faudra créer 2 applications (ou alors se partager le travail entre étudiants: un étudiant crée un serveur et un autre crée le client). Vous pouvez vous appuyer sur le tutoriel disponible ici https://coldstreams.com/appinventor/2015/01/23/part-1-basic-bluetooth-communications-using-app-inventor/ pour réaliser cette application.