Przegląd interfejsu API aplikacji Snapshot

Za pomocą interfejsu Snapshot API możesz uzyskać informacje o bieżącym otoczeniu użytkownika. Interfejs Snapshot API umożliwia dostęp do różnych sygnałów kontekstowych:

  • wykryta aktywność użytkownika, np. chodzenie lub jazda samochodem;
  • zarejestrowane przez Ciebie beacony w pobliżu;
  • Stan słuchawek, czy są podłączone.
  • Lokalizacja, która obejmuje szerokość i długość geograficzną.

System zapisuje te wartości w pamięci podręcznej, aby można je było szybko zwracać. Jeśli nie ma danych, czujniki i wnioskowanie są wykorzystywane do zwracania nowych wartości stanu. Interfejs Awareness API zwraca istniejący typ danych dla typów kontekstu, które mają publiczny interfejs API.

Każdy sygnał kontekstowy ma odpowiednią metodę interfejsu Snapshot API. Aby na przykład uzyskać bieżącą wykrytą aktywność, wywołaj getDetectedActivity(), użyj SuccessListener, aby uzyskać DetectedActivityResponse, a następnie wywołaj getActivityRecognitionResult(), aby zwrócić ActivityRecognitionResult, z którego możesz uzyskać rzeczywiste dane żądania.

Poniższy przykład pokazuje, jak uzyskać ostatnią wykrytą aktywność:

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

Więcej informacji o tym, co możesz zrobić z danymi żądania, znajdziesz w artykule Pobieranie danych zrzutu.