今回は、Android 4.0から追加された新機能「Wi-Fi Direct」を紹介します。デバイス同士を連携させて、◯×(マルバツ)ゲームで対戦するアプリを作成しましょう。

図1●○×ゲームの画面
図1●○×ゲームの画面
[画像のクリックで拡大表示]

 4.0から追加されたWi-Fi Directは、2010年にWi-Fiアライアンスが策定したもので、デバイス同士で直接通信を行うための仕様です。今回は、このWi-Fi Directを使って、デバイス同士で対戦できる○×ゲームを作成します(図1)。

Wi-Fi Directとは

 Wi-Fiといえば、無線LANのAP(アクセスポイント)と機器を接続する仕様ですが、Wi-Fi Directでは、APを介さずに機器同士で通信を実現できる点が特徴です。APを介さない類似の例には、PSP(PlayStation Portable)やニンテンドーDSなどのゲーム機で使われるAd Hoc(アドホック)通信がありますが、こちらはAd Hoc通信の利用中にAPと接続できません。一方Wi-Fi Directでは機器間の通信とAPとの通信を両立できます*1

*1 あくまで仕様上の話です。残念ながら、現時点のAndroidのバージョンでは、通信の両立をサポートしていません。

 Wi-Fi Directにはこのほか、暗号化方式としてWPA2を利用したセキュアな通信が可能なこと、簡単にセットアップできるWPS(Wi-Fi Protected Setup)と呼ばれる仕組みをサポートしていること、などの特徴があります。また、Wi-Fi Directの対応機器は、従来のWi-Fi機器のAPとして振る舞うことができます。例えば、Wi-Fi Directに対応したプリンタがあれば、ネットワークに参加しなくても機器から直接プリンタと接続して印刷できます。