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();
                }
            })

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