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();
}
})
リクエストデータでできることの詳細については、スナップショット データを取得するをご覧ください。