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

如要進一步瞭解如何處理要求資料,請參閱「取得快照資料」。