2018年6月26日火曜日

共通のソースプログラムでiOS用とAndroid用のアプリを作れるThunkableX(その1)

*最後にある【ご参考事項】を補強しました。2018-6-28

これまでずっと利用してきたMIT App Inventor for AndroidThunkableですが、限時点でThunkableの方に、大きな進展がありますので、それを試行してみます。注目点はいくつかあるのですが、共通のひとつのソースプログラム(デザインとブロック)を用いて、iOS上でもAndroid上でも実行できる!これが最大のポイントです。

さっそく、画像認識アプリを作ってみます。3つのパートの構成にしました。初級向けには、最初のPart A (または、Part A + Part B)だけでもよいかと思います。

  • Part A:スマホで認識させたいものを撮影する。それをMicrosoft Recognizerに送って、何が写っているかの認識結果(英文)を表示させる。
  • Part B:これと同じですが、撮影済みのPhoto Libraryにある画像も認識させる。
  • Part C:認識結果に、評点と感想(コメント)を付ける。それを後で仲間とシェアするために、Media DBとRealTime DB(Firebase)に格納する。

以下に、そのソースプログラム(デザイン部とブロック部)を示します。以下がその全てです。

画像認識アプリのデザイン部

画像認識アプリのブロック部

このソースプログラム全体は、以下に公開していますので、詳細はそちらをご覧ください。ご自分のgmailアカウントに入っている状態で、下記リンクをクリックすると、自動的に、ThunkableXのプロジェクトとして、上記のソースプログラムが設定されます。

https://x.thunkable.com/copy/3a30e4c6b8b976811b85aef29bfac2e8

このソースプログラムを、iPhone用Android用にビルドして、それぞれ実行させた例を以下に示します。

共通ソースプログラムからビルドして実行した例
Part Cでは、各人が色々なものを撮影して、仲間同士でその結果を検討するために、認識結果とその人の評点、コメント(意見)を保存します。撮影画像の保存は、Media DBというものに格納します。その格納場所を示すURLとその他の情報を、RealTime DB(Firebase)に格納します。

撮影画像のMedia DBへの格納例
認識結果やユーザ評点などのRealTime DBへの格納例

【ご参考事項】
今回の試行で気がついたことなどを、ご参考までに記します。
  1. 上記に公開しているソースでは、Media DBRealTIme DBを利用するためのAPIキー情報などは削除してあります。生徒らに、Part Cを使わせる場合には、管理者がこれらのAPIキーなどを取得して各人に設定させる必要があります。
  2. これら2つのDBの設定については、 下記をご覧ください。Thunkable Docs→「Thunkable Cross Platform X」→「Create」→「Components」→「Data」→RealTimeDB, Media DB
  3. 従来のAndroid用のThunkable(Thunkable Classic)と比べて、今回のThunkableXは、使えるセンサー類の少なさが目立ちます。またExtensions機能もありません。しかし、そうだとしても、iOSにも共通に使えるようになったメリットは非常に大きいです。不足の機能も順次追加されていくはずです。
  4. iOS用のビルドには、現時点では、10分〜15分程度かかります。したがって、一定の完成度になるまでは、Live Testを使う方がよいです。WiFi環境下で、PCとiOSを接続して、リアルタイムにプログラム修正、実行ができます。Live Testには、Apple Storeにある「Thunkable Live」が必要です(→下図参照)。
  5. iOSのビルド結果は、メールで通知されます。それをiOSで(PCではなく)受信して、示されたリンクをクリックするだけでインストールされます。しかしながら、現時点では、iOS側にダウンロードできるのは、1アプリに限定されています。別のアプリをダウンロードすると置き換わってしまいます。
  6. iOSにビルドしたファイルをインストールする際に「信頼されていないソフト...」が表示される場合があります。「設定」→「一般」→「プロファイルとデバイス管理」ヘ進み、「Rappidly Inc」を「信頼する」にして下さい。
  7. Android用にも、Live Testは使えますので重宝します。そのためには、Google Playストアにある「Thunkable Live」が必要です(→下図参照)。ビルドを行う場合、通常ほぼ直ちに結果が返ってきますが、PC側にダウンロードされるので、それをメールか、Dropboxなどを経由してAndroidにインストールする必要があるようです。
  8. 今回のThunkableXと、従来のThunkableおよびMIT App Inventorとのソースレベルの互換性はほぼ全面的に失われています。iOSとの共通化のためには、全面的に設計を見直す必要があったとのことです。その意気込みは高く評価したいと思います。
Live Testに必要なアプリ

0 件のコメント:

コメントを投稿