AI2 App_TinyWebDB

TinyWebDB, piccolo database per il web. In tutte le applicazioni informatiche i database sono una componente molto importante, anche se molte volte l'utente finale nemmeno si accorge di interagire con esso.
Avere distribuito un'applicazione collegata a un database permette, aggiornando i dati del database, di tenere aggiornati tutti i dispositivi che utilizzano quella applicazione.
Poniamo sia scritta e distribuita un'applicazione che si avvale di un database di ricette di cucina.
(Potrebbe trattarsi di contatti telefonici, direttive per collaboratori sparsi sul territorio, eccetera)
Non importa dove sia fisicamente il database, anche a chilometri di distanza dai suoi utenti. Modificando i dati nel database, ogni utente, disponendo di connessione Internet, può usufruirne in tempo reale.
Con TinyWebDB è possibile non solo consultare i database, ma anche inserirvi informazioni.
Per esempio, un gruppo di utenti sparsi sul territorio, che dispongono della stessa applicazione, potrebbero, ognuno, aggiornare i dati nel database.
Informazioni che da quell'istante, sarebbero disponibili a tutti gli altri utenti.
I file zip per i download sono aia compattatti, quando hanno password, essa e' reperibile nel testo App Inventor 2 per esempi
Testare le applicazioni con TinyWebDB
Le proprie applicazioni possono essere testate nello spazio web
http://appinvtinywebdb.appspot.com/
dal titoloApp Inventor for Android: Tiny WebDB Service.
Visitandolo, veniamo informati che:
NOTA: Questo servizio è in corso di modifica. Potrebbe smettere di funzionare senza preavviso.
Il servizio è progettato per funzionare con App Inventor per Android e il componente TinyWebDB.
Il sito è stato progettato per essere utilizzato da applicazioni in esecuzione sul telefono (tramite richieste JSON).
È inoltre possibile utilizzare get e memorizzare manualmente da questa pagina Web per verificare la API, e anche cancellare singole voci.
Questo servizio è solo una demo.
Il database memorizza al massimo 250 voci, superato questo numero le voci più vecchie saranno cancellate. Inoltre, i valori dei dati individuali sono limitati a un massimo di 500 caratteri.
Il codice sorgente per questo servizio, progettato per funzionare su Google AppEngine, è incluso nella documentazione di App Inventor.
È possibile utilizzare quest'applicazione come un modello per la distribuzione di propri servizi costruiti con applicazioni che utilizzano il componente TinyWebDB .
Chiamate disponibili:
/ Storeavalue : Memorizza un valore, dato un tag e un valore
/ GetValue : Recupera il valore memorizzato sotto un determinato tag. Restituisce la stringa vuota se nessun valore è memorizzato.
  • Tornare alla cartella decompressa al punto 2, con un editor di testo aprire il file app.yaml.
    • Modificare la prima riga in modo che il nome dell'applicazione sia uguale a quello del server Gooogle
      Se per esempio la vostra applicazione si chiama TinyWebMio1 sostituire customtinywebdb con TinyWebMio1

      Tutto il resto non va modificato. La stringa di collegamento con il vostro spazio web diviene http://TinyWebMio1.appspot.com/
    • In GoogleAppEngineLauncher, scegliere Deploy (Distribuisci) e seguire i passaggi per distribuire l’applicazione.
  • Test per vedere se l'applicazione è in esecuzione sul web.
    In un browser, inserire myapp.appspot.com, sostituendo myapp con il nome della vostra. 

Adesso basta fare le seguenti operazioni

  • Trascinare un componente TinyWebDB nel vewier.
  • Modificare la proprietà ServiceURL dal http://appinvtinywebdb.appspot.com/ predefinito per il servizio web.
  • A eventuali operazioni di StoreValue (blocchi), i dati verranno salvati sul vostro servizio, e qualsiasi operazioni GetValue recupererà dati dal vostro servizio.

Le istruzioni originali (in lingua inglese) sono a questo indirizzo web: http://beta.appinventor.mit.edu/learn/reference/other/tinywebdb.html
Siti interessanti
http://appinventorapi.com/program-an-api-python/
http://grokbase.com/t/gg/google-appengine/126r5wptnh/creating-webdb-services-throgh-google-app-engine-louncher
http://grokbase.com/p/gg/google-appengine/126r5wptnh/creating-webdb-services-throgh-google-app-engine-louncher