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