Tiny WebDBを使ってみた
プログラミング生放送勉強会 第9回@大阪のLTでお話させて頂いた内容のまとめです。
当日はgdgdですいません(^^;;;
TinyDBコンポーネントについて
App Inventorでアプリケーションを作る場合、Javaでプログラミングしていくみたいに自由にデータ(ファイル)の読み書きすることができません。
そこでローカルでデータを読み書きするコンポーネントとして、TinyDBが用意されています。
使い方はいたってシンプルで、まず管理したいデータにキーワードを決めてあげて、そのキーワードを引数にデータの読み書きするブロックを配置するだけ。プログラミングができる方は、JavaのHashMapや.NETのHashtableをイメージしてもらうとわかり易いかもしれません。
TinyWebDBコンポーネント
TinyDBと使い方はほぼ同じですが、データの保存先がローカルではなくWebのストレージになります。
デザイナでコンポーネントを配置すると、ServiceURLプロパティには"http://appinvtinywebdb.appspot.com"がセットされています。これはApp Inventor用に用意されたストレージで、保存可能なデータは1,000件までという制約があるものの、基本的には自由に読み書きできます。
(ちなみに1,000件を超えると順に上書きされていくようなので、長期的な保存場所には向かないです。あくまでサンプル的な場所として提供されているんじゃないかな、と)
カスタムTinyWebDBサービス
で、一番伝えたかったのはココなんですが、App Inventor用に提供されているストレージと同じものを自分で作って利用することが可能です。
TinyWebDBの詳しい仕様というのは公開されていないのですが、その代わりにGAE(GoogleAppEngine)にデプロイ(配置)するだけで動くサンプルが提供されています。
Creating a Custom TinyWebDB Service(日本語訳はこちら)
GAEのアカウントは必要になりますが、このサンプルをカスタマイズすれば自分専用のWebストレージとして、App Inventorで作ったアプリケーションから利用することができます。
"データにキーワードを付けて管理する"という特徴と、"データはWeb上に保存される"という特性を上手く活用すると、いろいろと可能性が広がるんじゃないかなーと思います。