Pages

Affichage des articles dont le libellé est TinyDB. Afficher tous les articles
Affichage des articles dont le libellé est TinyDB. Afficher tous les articles

jeudi 23 septembre 2021

Exploiter une TinyDB avec un affichage sous forme de liste avec AppInventor2

 Ce bref article va montrer simplement comment on peut exploiter facilement une TinyDB avec Appinventor2 et afficher les "TAG" (étiquettes) sous forme de liste cliquable.

Je vais partir pour cela sur une application dont le cahier des charges pourrait se résumer à cette fonction de contrainte (qui est du coup la fonction principale) :

"Stocker, dans une base de données persistante, différentes bobines d'impression 3d avec leur masse respective"

Voici par exemple une IHM simple pour l'écran d'accueil (rappel : les images 20.png et 30.png sont juste des blancs pour créer un espace plus propre) :

On oublie pas le bouton pour aller vers un autre écran...

Et les blocs correspondants sont :


Oui, d'accord, mais comment fait-on pour enregistrer des bobines dans la base de données ?😵

Il nous faut un nouvel écran pour éditer/ajouter les bobines (toujours aussi joli, je sais, j'ai un talent d'artiste !!!! 😂😂😂) :


Et les blocs correspondants sont :



Je vous laisse tester l'application en téléchargeant le fichier apk correspondant. Le fichier projet .aia est disponible sur demande... 


Le fichier .apk est disponible ici :

Pour toute question, un petit courriel ou un message sur Session...




mercredi 15 septembre 2021

Utilisation basique de la TinyDB de AppInventor2

De nombreux utilisateurs de AppInventor 2 se retrouvent embarrassés lorsqu'il faut sauvegarder des informations saisies par l'utilisateur ou calculées par l'appareil.

En effet, parfois, pour certaines applications, il est nécessaire qu'une sauvegarde de données soit persistante, après la fermeture de l'application et/ou l'arrêt du téléphone. L'utilisateur ne doit pas toujours ressaisir des informations à chaque lancement par exemple.

Cet article va montrer comment conserver des données et comment les récupérer (sur le même appareil). un autre article sera consacré à une sauvegarde dans les nuages...


Rappel : ces deux articles expliquent déjà des notions sur l'outil qui va être utilisé :

https://sti2d-sin-isn.blogspot.com/2017/12/sauvegarder-des-donnees-entre-ecrans.html

https://sti2d-sin-isn.blogspot.com/2017/11/sauvegarder-des-donnees-entre-ecrans.html


1. Le constat :

Si on réalise cette application ci-dessous :





Si on saisit les informations demandées, la fermeture de l'application effacera les données, elles seront perdues !
😢

2. Une solution : TinyDB

Mise en œuvre (rappel)
Ceci va permettre de créer une base de donnée (petite, comme son nom l'indique) sur le smartphone.
Au niveau des blocs, il suffit de procéder ainsi (pour cet exemple, bien entendu) :
Lorsque l'utilisateur va cliquer sur le bouton, les données seront enregistrer sous deux étiquettes, "prenom" et "age" et ce de manière permanente.


Oui ! bon ! D'accord ! Et maintenant ?

3. Exploitation de cette application

    A titre d'exemple, on va reprendre l'application précédente et ajouter quelques éléments :
Fonctionnement :

Lancement de l'application après installation :
On lance une vérification :
La base de données est vide, donc comme demandé dans les blocs, on affiche "rien"

On saisit des informations :
Le prénom et l'année de naissance sont affichés après appui sur "Valider"

On vérifie à nouveau :
Pour le moment, ça fonctionne...

On quitte l'application et on la relance, puis on clique sur "Vérification"
Les données ont bien été conservées ! Cela fonctionne aussi après arrêt et redémarrage du téléphone.

















lundi 4 décembre 2017

Sauvegarder des données entre écrans avec AI2-version simplifiée

Ci-dessous la version simplifiée de l'utilisation de la TinyDB avec un seul champ sauvegardé entre deux écrans :

Ecran 1 :

Écran 2 :








jeudi 23 novembre 2017

Sauvegarder des données entre ecrans avec AI2

AI2 est génial, c'est clair. Il est facile et souple à utiliser.... mais.... il ne conserve pas les variables d'un écran à l'autre.....
 
Ci-dessous un exemple de l'utilisation de la TinyDB, base de donnée embarquée, qui permet de contrer ce souci :


 
Ecran 1:
 
 
Ecran 2:
 
Dans cet exemple, j'utilise un compteur pour incrémenter les TAGs, sinon, bien entendu, le dernier écrase le précédent. De plus, je sauvegarde le compteur afin qu'il ne se remette pas à zéro au redémarrage de l'application.