前回 まで、「 SATCH SDK 」の実践編としてARアプリを作成しました。今回は、応用編として「SATCH Developers 」サイトの「サンプル 」を活用してみましょう。
SATCH Developers サイトの「サンプル 」ページでは、多数のサンプルプログラムが提供されています。サンプルプログラムがどのように動作するのかは、「 デモムービー」ページで確認することができます。これらをSatch Studio上でさらに作り込んだり、複数のサンプルを組み合わせることが可能になります。また、すでにエクスポートされたファイルも用意されているので、Eclipseのプロジェクトに読み込むことも可能です。今回は、前回Satch Studioで作成したチュートリアルと同じものを、サンプルプログラムからEclipseでビルドし、実際にAndroid搭載端末上で動作させてみましょう。
「サンプル」の内容は、「 デモムービー」ページで確認することができる
(※ 画面はイメージです)
Android搭載端末を準備する
Android搭載端末をEclipseから認識できるようにするため、あらかじめAndroid搭載端末用の「ADB USBドライバ」をメーカーのサイトからダウンロードしておきましょう。これは一般的なUSBドライバとは異なりますので注意しましょう。また、Android搭載端末の設定画面を開き、「 アプリケーション」 →「 開発」とタップして「USBデバッグ」と「スリープモードにしない」の項目にチェックを入れておきます(項目名は機種によって異なる可能性があります) 。また、「 提供元不明のアプリ」のチェックを外しておきます。続いてAndroid搭載端末をUSBケーブルでPCに接続し、ドライバをインストールします。エラーになる場合には、Windowsのコントロールパネルから「デバイスマネージャ」を開き、「 Android ADB Interface」の項目をダブルクリックしてドライバをインストールしましょう。
実際にAndroid搭載端末上でアプリを動作させるために、あらかじめ端末の設定とドライバのインストールを行う
(※ 画面はイメージです)
サンプルの中でも、最も初歩的なアプリケーションが「PLAYER」サンプルです。これは、前回チュートリアルで作成したアプリと同じもので、アプリを起動してAndroid搭載端末の画面に月面写真を写すと、ロボットの3Dアニメーションが表示されるというものです。まずはEclipseで新しいAndroidプロジェクトを作成します。名称を入力し、ビルド・ターゲットのSDKを設定します。ローカルで動作確認を行うだけですが、ここではパッケージ名を「com.kddi.sampleplayer」としています。設定が終わったら「完了」をクリックします。
サンプルをプロジェクトに読み込む
次に、サンプルページからパッケージをダウンロードします。「 ダウンロードする」ボタンをクリックすることでパッケージを圧縮ファイルで丸ごとダウンロードできます。「 PLAYER」の場合は、Android版では「SamplePlayer」のapkファイル、「 scenario_original」フォルダ、「 scenario_export」フォルダ、「 project」フォルダで構成されています。iOS版にはapkファイルは含まれません。
これらのファイルを解凍し、projectフォルダのプロジェクトをEclipseのメニューを使ってインポートします。Eclipseのファイルメニューからインポート→Existing Projects into Workspace を開き「次へ」を押下します。インポートしたいプロジェクトが入っているフォルダを選択し、Copy projects into workspase にチェックを入れて、「 終了」を押下します。そうすると、インポートが開始されます(実際にはEclipseのワークスペースにプロジェクトデータがコピーされます) 。
サンプルのパッケージをダウンロードする。「 ダウンロードする」ボタンで一括ダウンロードが可能
(※ 画面はイメージです)
さらに、プロジェクトフォルダ直下に「libs」フォルダ、その直下に「armeabi」フォルダを作成し、「 armeabi」フォルダには実践編でダウンロードした「libsatchAndroid.so」「 libtiAndroidAR2.so」の2つのファイルを、libs直下には「satch.jar」ファイルを追加します。続いてEclipseの画面左側にあるタブ「パッケージ・エクスプローラー」でプロジェクト名を右クリックし、「 ビルド・パス」 →「 ビルド・パスの構成」をクリックします。「 ビルド・パス」の設定画面で「jarの追加」ボタンをクリックし、追加した「satch.jar」ファイルを指定します。
ファイルを入れ替えた状態では、Eclipseのプロジェクトフォルダなどに「×」マークが表示されることがありますが、ビルド・パスを設定することで表示されなくなります。基本的には、これでビルド準備完了となります。
Android搭載端末にアプリをビルドする
ビルドを実行する前に、「 実行」メニューから「デバッグの構成」をクリックして開き、「 ターゲット」タブをクリックします。「 Deployment Target Selection Mode」の「手操作」にチェックを入れておきます。ひとまず「閉じる」ボタンをクリックして画面を閉じ、PCとAndroid搭載端末の接続を確認します。Android搭載端末の画面上部にAndroidのアイコンが表示されていれば、デバッグ可能な状態です。Eclipseに戻り、「 SamplePlayer」プロジェクトを右クリックし、「 デバッグ」から「Androidアプリケーション」を選択します。初回はデバッグのターゲットを選択する画面が表示されるので、PCに接続したAndroid搭載端末を選択します。
「デバッグの構成」で「Deployment Target Selection Mode」の「手操作」にチェックを入れることで、接続したAndroid搭載端末を選べる
(※ 画面はイメージです)
すると、Android搭載端末にサンプルアプリケーションがインストールされ、「 .tiSPlayer」というアイコンが表示されます。さらに待っているとアプリが起動し、全画面のカメラ画像表示に切り替わります。前回使用した月面写真を写してみましょう。月面写真の上に3Dロボットが表示されれば成功です。カメラの角度を変えて、3Dロボットの角度がシンクロしているかチェックし、ロボットをタップしてアニメーションが再生されるかを確認しましょう。
エミュレーターと違って実機で確認できることは、新鮮な感動があります。アプリはそのまま端末に残ります。プログラムに修正を加えてビルドし直した場合は上書きされますが、もちろんAndroid搭載端末上で削除することも可能です。
PCに接続したAndroid搭載端末にサンプルアプリがインストールされ、実行される
基本的には、このような操作と流れでサンプルアプリを試していくことができます。Satch Studioに読み込んで、たとえばAR用の画像を変更してみるなど手を入れていくこともできますので、順番にチャレンジしていくといいでしょう。Satch StudioやEclipseをより理解していくためにも有効です。また、Androidマーケットなどで本格的な公開を目指すなら、より多くのAndroid搭載端末で動作チェックを行う必要があります。エミュレーターでさまざまなバージョンのOS、機能設定で仮想的な端末を作成し、チェックを行っていきましょう。
サンプルページには、ほかにも多くのサンプルが用意されています。次回は応用編の2回目として、どのようなサンプルがあるのかを紹介していきます。
SATCH SDK利用規約改訂に関して 2012年3月1日 よりSATCH SDK の利用規約が改訂されました。
従来の利用規約では、SATCH SDKで開発するアプリケーションを公開する場合は、KDDIの提供するau one Marketから配信することが必須とされていましたが、改訂後はAndroidマーケット、App Store、au Marketのいずれかで配信することと、アプリの詳細情報を本サイトに登録し、3/1にリリースしたSATCH Viewerポータルに掲載していただくことが必須条件となります。その他、詳細につきましては、「 SATCH Developers 」にてご確認ください。