2012年12月3日月曜日

App Inventorの最新ソースを追いかける[WiFi Connect]

 このエントリではApp Inventorの最新ソースを追いかける[WiFi Connect]を取り上げます。

 App Inventorで実機を接続して動作確認するには
  • USBケーブルで接続して行う方法
  • PCにapkファイルをダウンロードしてからadbを使って送り込む方法
  • あるいはPCからapkファイルを実機内にコピーしてからインストールする方法

などがあります。

 最新のApp Inventorでは上記の方法に加えて

  • Wifi Connect(無線LAN接続)

が使えるようになるようです。

(追記)すでにこの機能はMIT版App Inventorで正式に使える機能になっています。










 GitHubからソースを入手してbuild可能な方はbuildして試すことが可能ですが、buildが面倒という方は以下のサイトを利用する手があります。

 この機能は今年の夏頃にすでにApp Inventor Coffee ShopというGoogleグループにて

Announcing the availability of a TEST of the new MIT App Inventor wireless interface

上記のようにアナウンスされ、以下のテストサイトが立ち上がっていたものです。

http://testwireless.appinventor.mit.edu/

それがGitHubで公開されているソースのメインストリームに入ってきた、ということなのでしょう。

(追記)このあたりについては5月に実施されていたオフラインミーティングでプロ生ちゃんでお馴染みの@jz5さんが紹介されていましたね。他にもユーザ会会長の多田さんが各所でお話もされていますのでご存じの方も多いと思います。




なお、この機能を使うためには端末側に

MIT AICompanion
Android app on Google Play

というアプリを導入しておく必要があります。

(2012.12.22修正)WiFiConnect正式リリース前の古いリンクなっていましたので修正しました。KGKGKGさま、しゃみぃさま、ご指摘ありがとうございます。


端末側でこのアプリを起動すると




こんな感じで起動します。

接続の手順としては、以下のような感じになります。

  1. PC側でBlocksEditorを起動する
  2. BlocksEditorの[Connect to Device]から[WiFi]を選択します
  3. ダイアログに表示されるQRコードを端末側のアプリの[Scan the QR Code]で読み込ませると自動で接続します。あるいは表示されている接続コード文字列を打ち込み[Connect to App Inventor]ボタンをタップします
  4. これで端末とApp Inventorが接続されますので、デザイナで部品を配置してBlocksEditorでブロックを組み立てて行ってみてください。デザインによる部品配置はどんどん端末の方に反映されていくと思います。
ケーブル接続しなくても作業ができるのはなかなか快適です。


 切断してしまった場合の再接続が若干面倒といえば確かにそうなのですが、これは仕組み上やむを得ないのかもしれません。

 新しい機能を試してみたいという方はぜひトライしてみてください。


6 件のコメント:

  1. こんばんは。adb接続でデバッグしようとしているのですがnexus7のアップデート後(?)にブロックエディタとnexus7が接続できなくなっています。しばらく開発を行なっていなかったんですがその間にnexus7のアップデートがあったので多分それでadb接続ができなくなったと推測しています。USBドライバを再インストールしたり設定を見なおしてるんですがまだadb接続ができません。

    WiFi Connectがあるということをここで教えていただいたのでやろうとしました。しかし私の環境ではまだwifi接続もできなくて困っています。
    app inventor companionはアップデートして下記のリンクに移動したようですよ。
    https://play.google.com/store/apps/details?id=edu.mit.appinventor.aicompanion2&hl=ja

    返信削除
    返信
    1. KGKGKGさま

      Nexus7のアップデート後ということは4.2.1の状態ということでしょうか。
      現在手元のNexus7はrooted 4.2の状態なのでファームウェアを入れ替えてテストしてみる必要がありそうなので検証は少しお時間をください。

      AICompanionアプリのリンク先が古くなっておりましたので修正しました。
      ご指摘いただきありがとうございます。

      削除
    2. KGKGKGさま

      Nexus7をカスタムロムから一度標準の4.2に戻してOTAアップデートで4.2.1にした状態でAICompanionアプリの動作を検証してみたのですがWiFiコネクトで問題なく接続出来てしまいました。

      また、USB接続でも問題なく接続出来ています。

      詳細の内容はLogCatなども含めて調査しないと何とも言えないのですが・・・。

      あと何かできることとしてAppInventorのWindows用セットアッププログラムの再インストールなどをお試しいただくことは可能でしょうか。

      削除
    3. 詳細は結局謎なんですがなんとかUSBでの接続に成功しました!
      USBの抜き差しやUSBドライバーを何度か削除と更新を繰り返しました。
      たまたまadbの画面を見るとなんと認識できてるではありませんか!
      ブロックエディタでの動作もいけました。

      wifiでの接続はなぜかまだできません・・・
      私のルーター環境が悪い?引き続きいろいろ試してみます。

      削除
    4. KGKGKGさま

      USB接続は復活されたようで良かったです。

      残るはWiFiコネクトですが、一度Windows側のファイアウォール設定をオフにしてみてください(できればインターネットセキュリティソフトのものも)。

      1つの可能性なのでハズレかもしれませんが、念のため確認してみてください。

      削除
  2. お世話になっております。親切にコメントを返してくださってありがとうございますっ!
    AppInventorのWindows用セットアッププログラムの再インストールをしたのですが状況は同じでした。
    以前の環境ではブロックエディタのConnect to deviceから普通に接続できたのですが・・・
    nexus7のAndroidバージョンを調べたところ4.2.1でした。

    またいろいろいじって試してみます。

    返信削除

おすすめ書籍