Snapshot API の概要

Snapshot API を使用して、ユーザーの現在の環境に関する情報を取得できます。Snapshot API を使用すると、さまざまなコンテキスト シグナルにアクセスできます。

  • ユーザーのアクティビティが検出された(歩行中や運転中など)。
  • 登録した近くのビーコン。
  • ヘッドフォンの状態(接続されているかどうか)。
  • 位置情報(緯度と経度を含む)。

システムはこれらの値をキャッシュに保存し、すばやく返すことができます。データがない場合、センシングと推論が行われ、最新の状態値が返されます。Awareness API は、公開 API を持つコンテキスト タイプの既存のデータ型を返します。

各コンテキスト シグナルには、対応する Snapshot API メソッドがあります。たとえば、現在検出されているアクティビティを取得するには、getDetectedActivity() を呼び出し、SuccessListener を使用して DetectedActivityResponse を取得します。次に、getActivityRecognitionResult() を呼び出して ActivityRecognitionResult を返します。これにより、実際のリクエスト データを取得できます。

次の例は、検出された最新のアクティビティを取得する方法を示しています。

        Awareness.getSnapshotClient(this).getDetectedActivity()
            .addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
                @Override
                public void onSuccess(DetectedActivityResponse dar) {
                    ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
                }
            })

リクエストデータでできることの詳細については、スナップショット データを取得するをご覧ください。