ロボットフォーカスとロボットライフサイクルに関しては、前回学習しました。今回はPepperのアクションについて掘り下げます。 Pepperでのアクション実行 Pepperは、話す・聞く・動く・アニメーションを再生する・人間を見つめる・チャットを行う・視線を動かす・特定の地点に留まる・写真を撮るといった動作が可能です。アプリを開発する際、これらのアクションがメインの構成要素になります。 前提条件 このページで説明しているアクションの利用方法を理解するためには、Javaの非同期やスレッドに関する知識が必要です。 1.アクションの作成 ビルダーを用いて、アクションを同期もしくは非同期で作成します。以下が各アクションをビルドする手順です。 アクションのビルダーにQiContextを渡す ビルダーへアクションのパラメータを渡す buildメソッドかbuildAsyncメソッドを呼び、アクションを作成する 同期 アクションを同期で作成するため、ビルダーのbuildメソッドを呼びます。 Say say = SayBuilder.with(qiContext) .withText("こんにちは") .build(); 警告 アクションを同期で作成した際はPepperとタブレットが通信するため、UI上で実行するとNetworkOnMainThreadExceptionがスローされる可能性があります。 非同期 アクションを非同期で作成するため、ビルダーのbuildAsyncメソッドを呼びます。 Future<say>sayActionFuture = SayBuilder.with(qiContext) .withText("Hello!") .buildAsync(); アクションを非同期で作成すると、非同期処理と連携するためのFutureインスタンスが取得できます。 2.アクションの実行 1で作成したアクションを実行してみまし...