- Apprendre à stocker des données sur un appareil mobile pour y accéder à partir d'une application mobile
- Découvrir les différentes options de stockage et d'accès aux données dans le nuage afin de partager les données entre les utilisateurs de l'application.
Voici les activités de cette leçon :
STOCKAGE DE DONNÉES À LONG TERME
Dans la dernière unité, vous avez appris à utiliser des variables et des listes pour stocker des informations dans votre application.
Lorsque l'application est fermée, toutes les variables stockées dans la mémoire de l'application sont effacées.
Il arrive cependant que vous souhaitiez conserver des informations entre deux utilisations de l'application. Il existe deux types de stockage à long terme :
Stockage local
Stocker des informations sur l'appareil mobile pour les récupérer à chaque fois que l'application est exécutée.
Par exemple, une adresse d'utilisateur ou un score de jeu élevé.
Stockage en nuage
Stocker les informations sur le web (nuage) afin que tous les utilisateurs de l'application puissent y accéder.
Par exemple, le classement des jeux ou les messages de chat.
ENTREPOSAGE LOCAL
Lorsque l'utilisateur ferme une application, les valeurs de toutes les variables sont effacées de la mémoire de l'appareil.
Si vous souhaitez stocker des données pour l'application entre deux exécutions, vous utiliserez la bibliothèque TinyDB le composant
TinyDB peut être utilisé pour stocker les informations personnelles d'un utilisateur qui ne doivent pas être partagées.
Par exemple, l'utilisateur souhaite entrer son nom, son âge et son adresse une seule fois, et non à chaque fois qu'il utilise l'application. Un autre exemple est le suivi de quelque chose comme des habitudes saines au fil du temps.
TinyDB est l'acronyme de Tiny Database (base de données minuscule). A base de données est une collection organisée de données. En tant que programmeur, vous décidez de la manière dont elle est organisée.
TinyDB se trouve dans le tiroir Stockage du Designer.
TinyDB est un composant non visible, vous ne le verrez donc pas apparaître à l'écran lorsque vous l'ajouterez à votre projet.
Pour accéder aux données dans TinyDB, vous donnez à chaque élément de données un tagtout comme vous donnez des noms aux variables. Vous stockez et obtenez la valeur de la balise tout comme vous définissez et obtenez les valeurs des variables. C'est ce qu'on appelle une paire étiquette-valeur.
TinyDB.StoreValue stocke la nouvelle valeur dans TinyDB. Vous devez spécifier la balise et la valeur à stocker.
TinyDB.GetValue obtient la valeur courante.
valueIfTagNotThere est nécessaire dans le cas où rien n'a été stocké précédemment avec cette balise.
STOCKAGE DANS LE NUAGE
Stockage en nuage permet à tout utilisateur de l'application d'accéder aux données et de les partager.
App Inventor propose trois options de stockage en nuage viables.
CloudDB est un composant et un service de base de données fourni par MIT App Inventor.
CloudDB fonctionne comme TinyDB. Vous stockez et accédez aux données à l'aide de paires étiquette-valeur.
CloudDB est accessible à partir du tiroir Stockage. Il s'agit d'un composant non visible, qui n'apparaît donc pas à l'écran lorsque vous l'ajoutez.
Le stockage des données fonctionne de la même manière que TinyDB.
StoreValue stocke la nouvelle valeur dans CloudDB. Vous devez spécifier la balise et la valeur à stocker.
Vous pouvez stocker différents types de données. Par exemple, dans ces blocs, highScore est un nombre. chat est une liste de messages.
L'obtention de données fonctionne de la même manière que pour TinyDB, mais avec une étape supplémentaire. Comme la base de données est dans le nuage, l'application doit demander à obtenir la valeur et attendre la réponse. Un bloc de gestion d'événements est donc nécessaire pour signaler que la base de données répond avec les données.
GetValue notifie à la base de données que l'application souhaite obtenir des informations. valueIfTagNotIl doit y avoir le bon type de données pour la balise. Par exemple, un nombre ou une liste.
GotValue est déclenché une fois que la base de données a répondu avec l'information. Si vous avez plusieurs étiquettes dans une application, vous avez besoin d'un bloc if pour vérifier l'étiquette correcte avant d'utiliser la valeur.L'obtention de données fonctionne de la même manière que pour TinyDB, mais avec une étape supplémentaire. Comme la base de données est dans le nuage, l'application doit demander à obtenir la valeur et attendre la réponse. Un bloc de gestion d'événements est donc nécessaire pour signaler que la base de données répond avec les données.
GetValue notifie à la base de données que l'application souhaite obtenir des informations. valueIfTagNotIl doit y avoir le bon type de données pour la balise. Par exemple, un nombre ou une liste.
GotValue est déclenché une fois que la base de données répond avec les informations. Si vous avez plusieurs étiquettes dans une application, vous avez besoin d'un bloc if pour vérifier l'étiquette correcte avant d'utiliser la valeur.
La feuille de calcul Feuille de calcul vous permet de lire et d'écrire à partir d'une feuille Google. Vous devrez créer un compte Google Developer et suivre les étapes suivantes quelques étapes pour relier votre application au document.
Le composant Tableur est disponible dans le tiroir de stockage. Il s'agit d'un composant non visible, qui n'apparaîtra donc pas à l'écran lorsque vous l'ajouterez à votre application.
Il existe de nombreux blocs permettant à l'application de lire et d'écrire des cellules, des lignes et des colonnes dans votre feuille de calcul. C'est une bonne option si vous avez des données de tableau auxquelles vous voulez accéder à partir de votre application. Vous pouvez également visualiser et modifier les données dans Google Sheets, ce qui est utile, en particulier lorsque vous testez votre application.
Conseil du mentor
Meilleures pratiques : Conservez toujours une copie de sauvegarde de vos données quelque part ! Il est très facile d'effacer ou de modifier accidentellement vos données, alors assurez-vous de conserver une copie supplémentaire dans un endroit sûr !
Dans App Inventor, vous apprenez le terme de paire Tag-Valeur et il est utilisé dans la vie réelle du codage, bien que nous l'appelions une paire Clé-Valeur ! Vous connaissez maintenant les termes utilisés par les experts !
Questions directrices à poser aux élèves : D'après vous, où sont stockées les données du cloud ? Vous les téléchargez sur un site web comme google, youtube, tiktok, etc. mais où sont-elles stockées ensuite ? Où se trouve le nuage ? Des entreprises comme Google possèdent d'ENORMES bâtiments remplis d'ordinateurs uniquement pour stocker des données dans le nuage. La plaisanterie est donc la suivante : "Ce n'est pas stocké sur le cloud : "Ce n'est pas stocké dans le nuage, mais sur l'ordinateur de quelqu'un d'autre". Le stockage de données d'Amazon :
Les conseils des mentors sont fournis grâce au soutien de l'AmeriCorps.
ACTIVITÉ : ENREGISTRER LES SCORES DES JEUX
Mise à jour du jeu-concours rapide pour enregistrer les meilleurs scores
- Ouvrez le projet de démarrage dans la galerie App Inventor.
Le lien dans la vidéo est incorrect ! Le lien vers le projet de démarrage est https://bit.ly/appinventor-quick-quiz - Chargez-le dans App Inventor pour que vous puissiez éditer votre propre copie.
- Suivez la vidéo ci-dessous pour relier une feuille Google à votre application afin de stocker et de mettre à jour les meilleurs scores des joueurs.
DÉFI
Maintenant que vous avez codé le jeu Quick Quiz pour lire, écrire et mettre à jour les meilleurs scores personnels, pouvez-vous.. :
- Lire les meilleurs scores de tous les joueurs et trouver le meilleur score de tous les joueurs.
- Communiquer ces informations à l'utilisateur
- l'utilisation d'un label
- ou l'ajouter au message d'alerte
RÉFLEXION
Si vous souhaitez stocker des données pour votre application, vous aurez besoin des informations apprises dans cette leçon. Lorsque vous commencerez à coder votre propre application pour votre projet, posez-vous les questions suivantes.
dans l'application,
sur l'appareil mobile de l'utilisateur,
ou dans le nuage pour le partage
RÉVISION DES TERMES CLÉS
- Base de données - une collection organisée d'informations
- Stockage en nuage - informations stockées sur le web de sorte que tout appareil connecté à l'internet puisse y accéder.
- Couple étiquette-valeur - une manière de stocker et d'accéder à des informations dans une base de données
RESSOURCES SUPPLÉMENTAIRES
Voici d'autres documents et tutoriels pour explorer le stockage en nuage dans App Inventor.
- Créer une application de chat qui utilise CloudD
- Créer une application application de connexion qui utilise CloudDB
- Connecter Firebase à App Inventor